Bash에서 아포스트로피가 포함된 파일과 직접 상호 작용할 수 없습니다.

Bash에서 아포스트로피가 포함된 파일과 직접 상호 작용할 수 없습니다.

"I'm Here.mp3"라는 파일이 있는데 ls, cp, mv 등을 사용하여 이 파일과 상호 작용하려고 하면 cannot stat "./I'm Here.mp3": No such file or directory.

큰따옴표, 작은따옴표, 따옴표 없음을 시도하고 각각 백슬래시를 사용하여 아포스트로피를 이스케이프 처리하려고 시도했으며 권한을 확인하고 "I'm Here.png"라는 더미 파일을 만들었으나 문제가 없었습니다. 같은 폴더에 있는 다른 파일에 문제가 있는 경우 이 파일에 어포스트로피가 있는 것뿐입니다.

터미널이 그러한 파일을 인식하지 못하는 원인은 무엇입니까? 아직 미디어 플레이어를 통해서 들을 수 있고, 파일 관리자에서 복사, 붙여넣기, 이동 등이 가능한데, 이렇게 파일 폴더의 메타데이터를 수정하려고 합니다.

이 명령을 사용하면 ls | hexdump -C아포스트로피를 16진수 값으로 인식할 수 있습니다 e2 80 99.

답변1

파일 이름을 인용해도 I'm here.mp3작동하지 않으면 파일 이름이 실제로 보이는 것과 다를 수 있습니다.

I'm아마도 사이의 공백이 Here공백이 아니거나 이름 끝(뒤에)에 추가 공백(또는 기타 보이지 않는 문자)이 있을 수 있습니다 mp3. ls | hexdump -C디렉토리의 파일 이름을 16진수로 보고 결과 16진수 출력에 따라 파일 이름에 올바른 문자를 사용하십시오.

관련 정보