rm が書き込み不可のファイルをデフォルトで削除しないのはなぜですか?

rm が書き込み不可のファイルをデフォルトで削除しないのはなぜですか?

rm がデフォルトで書き込み不可のファイルを削除しないのはなぜですか? 現在のユーザーにとって書き込み不可のファイルを削除したいが、ディレクトリに対する書き込み権限を持っている場合は、毎回この警告が表示され、削除を確認するために「y」を押す必要があります。

rm: remove write-protected regular file 

書き込み不可のファイルがなぜこのように特別に扱われるのか疑問に思います。 1 つ思い浮かぶのは、このようなファイルは通常、暗号化されたパスワードなどのユーザーの秘密データを含むユーザー設定ファイルであるため、rm はそれらを削除する前に警告を出すということです。 では、本当の理由は何でしょうか。

答え1

この場合、UNIX の動作が少し直感に反しているためです。ファイルを読み取り専用にマークして、誰かがそれを削除できることに驚く人は多いです。ファイルを削除するには、そのファイルを含むディレクトリへの書き込み権限のみが必要です。読み取り rm専用にすることで保護されることを期待していた場合に備えて、礼儀として尋ねています。

(force)を使用すると-f、煩わしさを感じることなく実行できます。ただし、慎重に使用してください。

答え2

書き込み不可に設定されているため、プロンプトが表示されるというのは正しいと思います。書き込み不可のファイルを削除する場合、実際にはそのファイルに書き込んでいることになります。プロンプトを表示したくない場合は、rm が実際には rm -f であるというエイリアスを常に作成できます。

関連情報