xkcd冗談で特定の「rm」シーケンスが表示されるのはなぜですか?

xkcd冗談で特定の「rm」シーケンスが表示されるのはなぜですか?

これは一部です。このxkcd漫画作者がソートプログラムを書くことができず、すべてのファイルを削除するコードを追加したと思います。

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

私が知っている限り、すべてを削除する標準的な方法は、rm /ルートから始まるすべてを削除することです。この最後のコマンドと前の2つのコマンドは、rm現在のディレクトリとホームディレクトリの内容を試みます。

なぜできないのですrm /か?

ベストアンサー1

一番上から始めると、rm存在しなければならないもの(またはシステムの他の重要な部分)を取り除くことができ、悪は不完全です。

このコマンドは、カーネルに入る前に、少なくとも cwd とユーザーのホームディレクトリが消えていることを確認します。

おすすめ記事