我正在嘗試在 Linux 上從 C 原始碼建立一個檔案。我正在使用該dd
命令從文件中讀取並通過創建文件將其寫入文件。如果我沒有目標目錄(將在其中建立文件的位置)的執行權限(有寫入權限),則無法建立該文件。如果我同時具有寫入和執行權限,則可以建立文件。
這是什麼原因呢?
答案1
設定後,r、w 和 x 模式屬性對檔案和目錄有以下影響:
- r 屬性(讀取權限):
文件:允許一個文件打開和讀。
目錄:允許列出目錄的內容。要檢索有關包含文件或目錄的任何信息,還必須設定執行屬性。
- w 屬性(寫入權限):
文件:允許寫入或截斷文件,但是此屬性不允許重新命名或刪除文件。確定刪除或重新命名檔案的能力按目錄屬性。
目錄:允許建立、刪除和重新命名目錄中的文件如果還設定了執行屬性。
- x 屬性(執行權限):
文件:允許將文件視為程式並執行。用腳本語言編寫的程式文件也必須設定為可讀才能執行。
目錄:允許目錄進入,例如cd目錄。
參考:Linux® 命令列 William E. Shots, Jr.
我建議您閱讀這本書或 pdf 版本,您可以從以下鏈接下載:http://sourceforge.net/projects/linuxcommand/files/TLCL/13.07/TLCL-13.07.pdf/download
答案2
目錄上的執行位使您可以進入/遍歷它。因此,在您的情況下,建立一個檔案(否則您可以輸入它)也是先決條件。