물결표(~) 폴더를 삭제하는 방법은 무엇입니까? [복사]

물결표(~) 폴더를 삭제하는 방법은 무엇입니까? [복사]

내 홈 디렉토리에서 "~" 폴더를 삭제해야 합니다.

rm -R ~지금은 이것이 잘못된 선택이었다는 것을 깨달았습니다 .

제가 사용해도 안전한가요 rm -R "~"?

답변1

이론적으로는 그렇습니다. 실무에서도 이런 경우가 종종 있습니다. 호출하는 쉘 스크립트나 별명이 이상한 일을 한다면 아마도 그렇지 않을 것입니다.

셸을 사용하여 echo특정 명령이 무엇으로 확장되는지 확인할 수 있습니다.

$ echo rm -R ~
rm -R /home/frostschutz
$ echo rm -R "~"
rm -R ~

인쇄된 내용을 복사하여 붙여넣지 않도록 echo삭제하세요 . ""단지 를 주면 경로를 확장하는 대신 "~"명령이 문자 그대로 표시된다는 점을 보여줍니다.~/home/frostschutz

명령에 대해 궁금한 점이 있으면 잘못되었을 때 덜 치명적인 명령으로 시작할 수 있습니까? 귀하의 경우 직접 삭제하는 대신 이름을 바꾸는 것으로 시작할 수 있습니다.

$ mv "~" delete-me
$ ls delete-me
# if everything is in order
$ rm -R delete-me

일반적으로 있어서는 안 되는 혼란스러운 파일 이름(예: 또는 로 시작하거나 개행 문자를 포함하는 다른 이름 등)을 사용하여 ~후회하는 것보다 안전하는 것이 좋습니다 .~

또한 탭 완성(입력 ls ~<TAB><TAB><TAB>) 사용을 고려하면 대부분의 쉘이 사용자를 처리하려고 시도할 것이며 이는 또한 일반 파일 이름을 잘못 입력하는 것을 방지하는 데 도움이 됩니다.

답변2

Kalvin Lee가 언급했듯이 cd디렉토리로 이동하여 해당 내용을 삭제한 다음 rmdir. rm -R명령을 오용하여 홈 디렉토리를 손상시킬 가능성이 적기 때문에 이 방법을 권장합니다 .

일반적으로 셸이 확장되지 않도록 내용을 작은따옴표로 묶을 수 있습니다. 그러면 다음 이름의 빈 디렉터리가 삭제됩니다 ~.

rmdir '~'

답변3

Frostschutz의 큰따옴표 방법과 Andy의 단순 인용 방법 외에도 더 짧은 방법도 있습니다.

rm -r \~

상대 경로 1:

rm -rf ./~

답변4

이 질문에 대한 답변이 이미 있다는 것을 알고 있지만 mc삭제하기가 두려운 창피한 파일을 삭제하려면 항상 Midnight Commander를 사용합니다. 이는 삭제하려는 파일을 강조 표시한 다음 삭제하는 인터페이스와 같은 "GUI"입니다.

관련 정보