find
및 조합을 사용하여 프랑스어 문자를 제거하도록 요청한 최근 질문에 대해 확장하고 싶습니다 rename
.
\
이제 다음 명령으로 건드리지 않는 이름이 포함된 일부 파일과 디렉터리에 직면하게 되었습니다 .
find . -depth -execdir rename -n '
utf8::decode$_ or die "cannot decode $_\n";
s{[^\w.\@+,#!?:&%~()\[\]/\\ -]}{?}gs;
utf8::encode$_;
' {} +
\\
해당 이름을 대상으로 사용해 보았지만 잘못된 방법인 것 같습니다. 내가 말하는 파일 이름은 다음과 같습니다.
$ls
'Links '
$ls -1b
Links\ *WHITESPACE*
이러한 디렉터리 이름으로 인해 PHP 코드가 중단됩니다. 예를 들어 해당 이름을 가진 디렉터리로 파일을 이동하려고 할 때입니다.
설명된 이름도 찾도록 주어진 명령을 향상하려면 어떻게 해야 합니까?