rm 預設不刪除不可寫檔案背後的想法是什麼?

rm 預設不刪除不可寫檔案背後的想法是什麼?

rm 預設不刪除不可寫檔案背後的想法是什麼?每次您想要刪除目前使用者不可寫入的檔案但您對目錄具有寫入權限時,都會收到此警告,並且需要按「y」確認刪除:

rm: remove write-protected regular file 

我想知道為什麼不可寫文件要以如此特殊的方式處理?我想到的一件事是,此類文件通常是用戶配置文件,其中包含用戶秘密資料(例如加密密碼),因此 rm 在刪除它們之前會發出警告。現在,真正的原因是什麼?

答案1

這是因為 UNIX 在這種情況下的行為有點違反直覺。當許多人將文件標記為唯讀並且有人能夠刪除它時,他們感到非常驚訝。您只需要對包含的目錄具有寫入權限即可刪除檔案。 rm出於禮貌而詢問您,以防您希望它是唯讀的以保護它。

使用-f(武力)將使其在不糾纏你的情況下做到這一點。但請小心使用。

答案2

我認為你對它的提示是正確的,因為它被設定為不被寫入。如果您要刪除不可寫文件,實際上您正在寫入該文件。如果您不想收到提示,您可以隨時建立一個別名,其中 rm 實際上是 rm -f。

相關內容