「隱藏文件」是名稱前綴爲.
的文件,例如, /home/pxf/.xxx
。 .xxx
是一個不可見的文件,'ls'不會列出它。Linux內核如何處理隱藏文件?
是否有「隱藏文件」的概念在Linux內核上?我的意思是「常規文件」和「隱藏文件」之間有區別嗎?
或者只是這是一個傳統的規則,一個前綴爲.
的文件將不會被默認顯示,如ls
。 (除了-a
選項)?
「隱藏文件」是名稱前綴爲.
的文件,例如, /home/pxf/.xxx
。 .xxx
是一個不可見的文件,'ls'不會列出它。Linux內核如何處理隱藏文件?
是否有「隱藏文件」的概念在Linux內核上?我的意思是「常規文件」和「隱藏文件」之間有區別嗎?
或者只是這是一個傳統的規則,一個前綴爲.
的文件將不會被默認顯示,如ls
。 (除了-a
選項)?
參見維基百科:Hidden file and hidden directory
他們是不是一種安全機制,因爲訪問沒有限制 - 通常的意圖,根本就不是「混亂」的目錄中的內容與用戶沒有文件列表顯示直接創建。
這只是一個方便的約定,應用程序可能會或可能不會觀察。內核不執行這些文件的不可見性。
因此,環境變量'PATH'也是shell搜索可執行文件的**約定**嗎? – TanakaYasen
@TanakaYasen:是的,特別是有些shell(或類似shell的程序),其中路徑變量是不同的名稱。這也是使用諸如'cron'之類的東西給人們帶來許多驚喜的原因,因爲有些軟件直接執行命令字符串而不調用子shell(這可能是因爲C具有execve功能) – slebetman
@slebetman'cron'不直接執行命令。它調用一個執行命令的shell。 'cron'通常意想不到的是'PATH'不是從用戶的rc文件中讀取的;它被設置爲最小值。至於C函數,有'execlp','execvp'和'execvpe',它們在'PATH'環境變量中搜索可執行文件。這些不是系統調用(內核函數)。 – xhienne
不,沒有什麼特別的。它基本上是軟件的一個「暗示」,除非用戶請求它才顯示它,但它沒有任何區別。所以你問題中的最後一句話是正確的。 – Iskar
Stack Overflow是編程和開發問題的網站。這個問題似乎與題目無關,因爲它不涉及編程或開發。請參閱幫助中心的[我可以詢問哪些主題](http://stackoverflow.com/help/on-topic)。也許[超級用戶](http://superuser.com/)或[Unix&Linux堆棧交換](http://unix.stackexchange.com/)會是一個更好的地方。另請參閱[我在哪裏發佈關於Dev Ops的問題?](http://meta.stackexchange.com/q/134306) – jww
從歷史上看,它開始是'ls'中的一個錯誤,因爲人們開始使用它作爲一項功能。相反,'ls'獲得'-a'標誌 – slebetman