답변:
문자가 문제가있는 파일 이름을 찾으려면 find를 사용할 수 있습니다.
$ find / -regex ".*[<>/:*?|].*" -print
찾고자하는 모든 문자를 대괄호 안에 넣으십시오. 일부 문자는 특별한 의미를 갖기 때문에 이스케이프해야합니다 (예 : 0-9는 0,-및 9가 아닌 모든 숫자를 찾습니다). 기본적으로 큰 따옴표로 지정하는 것은 파일 이름이 인쇄되어야하는 정규식입니다.
다음과 같이 모든 파일 목록을 포함하는 파일을 만들 수 있습니다.
$ find / -regex ".*[<>/:*?|].*" -print > problematic-files.txt
-name
대신에 사용 하는 경우 -regex
기본 쉘 패턴을 지정할 수 있습니다 (여기서 *는 문자 수,?는 1, 문자 선택은 [...]). 유연성은 떨어지지 만 목적에 충분할 것입니다.
$ find / -name "*[<>/:*?|]*" -print > problematic-files.txt
(Mac OS에 내가 사용하고있는 GNU find와 동일한 find 기능이 있는지 확실하지 않습니다. 매뉴얼을 얻고 정규 표현식이나 쉘 패턴을 사용하는 방법을 알아 보려면 "man find"를 사용하십시오.
/
의지 일치하는 경로가 같은 /some/path/goodname.txt
... 그렇지 않으면,이 Mac에서 잘 작동합니다.