내 홈 디렉토리에 이름이 \e[m
. 저는 리눅스를 사용하고 있습니다. 삭제하려고 했는데 rm
이라고 뜨는데 어떻게 삭제할 수 있나요 no such file or directory found
?
답변1
여기에 게시된 다른 답변 중 어느 것도 작동하지 않으면 언제든지 해당 inode를 기반으로 파일을 제거해 볼 수 있습니다.
하기 위해서:
- 를 수행하여 파일의 inode를 찾으십시오
ls -i
. inode 번호123456
가\e[m
. - inode 번호를 기준으로 파일을 삭제합니다. 또는
find -inum 123456 -delete
를 실행합니다find -inum 123456 -exec rm {} \;
.
답변2
솔직히 가장 쉬운 방법은 모든 쉘 글로빙을 통과하는 파일 관리자를 사용하는 것입니다.
쉘을 사용하면 쉘 완성 시스템을 사용해 보겠습니다(해당 쉘을 사용한다고 가정). 처럼 rm [TAB]
, 쉘이 메뉴를 제공하고 메뉴에서 선택하거나 메뉴를 순환할 수 있게 하면 쉘이 인식할 텍스트 표현인 완성을 얻을 수 있어야 합니다.
답변3
가능한 방법:
rm \\e\[m
또는
rm '\e[m'
또는
rm "\\e[m"
답변4
전역 확장을 사용할 수 있습니다. 을 시도 ls *[[]m
하고 이 파일만 반환하는 경우 안전하게 수행할 수 있습니다 rm *[[]m
.
문제의 파일이 위 명령으로 나열되지 않으면 ls
확실히 이스케이프가 포함되어 있고 'm'은 실제로 리터럴 m이 아닙니다(및/또는 [
리터럴이 아닙니다 [
).