xkcd 농담에서 특정 "rm" 시퀀스가 ​​나타나는 이유는 무엇입니까?

xkcd 농담에서 특정 "rm" 시퀀스가 ​​나타나는 이유는 무엇입니까?

이건 일부야이 xkcd 만화작성자가 정렬 프로그램을 작성할 수 없어서 모든 파일을 삭제하는 코드를 추가했다는 생각입니다.

system("rm -rf ./");
system("rm -rf ~/*");
system("rm -rf /");

내가 아는 한, 모든 것을 삭제하는 표준적인 방법은 rm /루트부터 시작하는 모든 것을 삭제하는 것입니다. 이 마지막 명령과 이전 두 명령은 rm현재 디렉터리와 홈 디렉터리의 내용을 시도합니다.

왜 안되나요 rm /?

답변1

맨 위에서 시작하면 rm계속 존재해야 하는 것(또는 시스템의 다른 중요한 부분)을 제거할 수 있으며 악은 불완전할 것입니다.

이 명령은 커널에 들어가기 전에 최소한 cwd와 사용자의 홈 디렉토리가 사라지는지 확인합니다.

답변2

증가하는 파괴 수준을 보여주기 위해 현재 디렉터리를 삭제한 다음 $HOME마지막으로 모든 디렉터리를 삭제합니다.

관련 정보