내 홈 디렉토리에서 "~" 폴더를 삭제해야 합니다.
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"입니다.