Permissions

為什麼 rm 在刪除防寫文件時會發出警告?

  • January 16, 2020

我有一個正常文件,我將其權限更改為444. 我知道由於文件是防寫的,我們不能修改或刪除文件的內容,但是當我嘗試使用刪除這個文件時rm,它會生成一個警告,說明我是否要刪除一個防寫的文件。我的疑問是這是否取決於文件​​是否可以刪除的目錄權限?為什麼rm即使目錄具有寫入和執行權限也會生成警告。是否可以刪除文件是否還取決於文件​​權限?還是完全依賴於目錄權限?

因為標準要求它:

**3.**如果file不是directory類型,-f沒有指定option,或者file的權限不允許寫且標準輸入是終端或者-i指定了option,rm 應該寫一個提示到標準錯誤並讀取一個來自標準輸入的行。如果響應不是肯定的,則 rm 將不再對目前文件執行任何操作並繼續處理任何剩餘的文件。

所以**a)這是一個特定於rm實用程序的問題(它沒有說明權限一般是如何工作的)和b)**你可以用或者覆蓋rm -f filetrue | rm file

而且,這是rm很長一段時間以來的行為—— 46年,甚至更長

引用自:https://unix.stackexchange.com/questions/562437