모든 파일과 디렉터리의 이름을 재귀 적으로 바꿔야합니다. 공백을 변환하여 모든 파일/디렉토리 이름을 소문자로 만듭니다. 다음 스크립트가 한 번에 모든 파일의 이름을 바꿀 수있게하려면 어떻게합니까? 현재 스크립트는 모든 파일/디렉토리가 변환되기 전에 여러 번 실행해야합니다. 코드는 다음과 같습니다 :Perl : 모든 파일과 디렉터리의 이름을 재귀 적으로 바꿉니다.
#!/usr/bin/perl
use File::Find;
$input_file_dir = $ARGV[0];
sub process_file {
$clean_name=lc($_);
$clean_name=~s/\s/_/g;
rename($_,$clean_name);
print "file/dir name: $clean_name\n";
}
find(\&process_file, $input_file_dir);
"일부 파일 이름"과 "some_filename"이 같은 디렉토리에 있으면 어떻게해야합니까? 그리고 비어 있지 않은 디렉토리들에 대해 "Some Dir"과 "some_dir"은 같은 부모를 가지고 있습니까? –
펄 이름 바꾸기 (3) 스크립트가 있다는 것을 알고 계십니까? –
@Pasi : "prename"입니다. 어떤 이유로, 평소와 같이, 데비안은 사물을 무너 뜨리고 이름을 "rename"으로 바꾸고, 원래의 이름을 userlinux에서 바꾸기로 결정했습니다. – Juliano