어떻게든 파일 이름이 없는 것 같은 파일을 만들었습니다. 파일에 대한 자세한 내용을 확인하는 방법에 대한 정보를 아래에서 찾았습니다.철사.
그러나 나열된 제안 사항 중 일부를 시도했지만 파일을 삭제할 수 없는 것 같습니다. 무엇을 해서 만들었는지 잘 모르겠지만 xml 파일을 복사하려고 할 때 이런 현상이 발생합니다.
파일의 일부 정보는 다음과 같습니다.
> ls -lb
total 296
-rw-r--r-- 1 voyager endeavor 137627 Jan 12 12:49 \177
> file *
: XML document
> ls -i
417777
나는 inum 스위치를 사용하는 방법을 찾은 다음 이를 제거하는 가장 쉬운 방법인 것처럼 보이므로 rm에 연결하려고 했습니다. 그러나 아래 링크된 스레드 맨 아래에 제공된 예는 나에게 실패합니다. 예는 다음과 같습니다:
> find -inum 41777 -exec ls -al {} \;
find: illegal option -- i
find: [-H | -L] path-list predicate-list
그래서 처음에는 아래와 같은 경로 목록을 사용해 보았지만 그 역시 작동하지 않았습니다.
> find . -inum 41777 -exec ls -al {} \;
인쇄할 수 없는 문자 \177이 무엇인지, 이를 명령에 전달하는 방법을 잘 모르겠지만 rm
이 파일을 삭제하려고 할 때 다른 파일/디렉터리를 엉망으로 만들지 않도록 하고 싶습니다.
답변1
파일에 이름이 있지만 인쇄할 수 없는 문자로 구성되어 있습니다. ksh93, bash, zsh, mksh 또는 FreeBSD sh를 사용하는 경우 인쇄할 수 없는 이름을 지정하여 제거해 볼 수 있습니다. 먼저 이름이 올바른지 확인하세요. ls -ld $'\177'
올바른 파일이 나타나면 rm을 사용하세요.rm $'\177'
또 다른 (위험한) 접근 방식은 rm 옵션을 사용하는 것입니다 rm -i -- *
. 파일을 삭제하기 전에 확인이 필요하므로 해당 파일을 제외하고 유지하려는 모든 파일을 건너뛸 수 있습니다.
행운을 빌어요!
답변2
vim
현재 작업 디렉토리에서 실행하는 경우 :
$ vim ./
화살표 키를 사용하거나 파일로 이동합니다 j/k
. 그런 다음 클릭 Shift+D
하고 삭제를 확인하세요 y
.
답변3
파일 이름을 에 전달하는 방법이 있을 수 있지만 rm
문제가 발생할까 봐 걱정된다면 GUI 파일 관리자를 사용할 수 있습니다. Emacs에는 설치된 경우 사용할 수 있는 디렉토리 편집 모드가 제공됩니다.
을
emacs
실행emacs /path/to/folder
하거나 emacs를 열고 Esc+를 누른 x다음 를 실행하면dired
경로를 묻는 메시지가 표시됩니다.삭제하려는 파일이 있는 줄로 이동한 후 을 누르세요 d.
D
파일 왼쪽 옆에 다음 중 하나가 표시 됩니다 .x변경 사항을 저장하려면 누르세요 . 파일 삭제를 확인하라는 메시지가 표시됩니다 y.
답변4
file *
쉘 glob( *
)이 이 파일을 얻을 수 있다는 것을 시연했으므로 이제 rm
glob에서 작업을 수행하기만 하면 됩니다.
- 파일이 있는 디렉터리로 변경합니다.
- 달리기
rm -i *
n
눈에 보이지 않는 파일 이름을 제외한 모든 파일을 입력하세요 .