我在Ubuntu中使用readdir()來顯示文件和目錄。奇怪的是readdir()顯示了一些以「dot」開頭的文件,一些以〜結尾。但是這些文件不在我指定的目錄中。readdir()顯示不可見文件
這些文件是什麼?
我想知道在讀取文件名時,這些奇怪的文件是否也會被d_name提及?
問候
我在Ubuntu中使用readdir()來顯示文件和目錄。奇怪的是readdir()顯示了一些以「dot」開頭的文件,一些以〜結尾。但是這些文件不在我指定的目錄中。readdir()顯示不可見文件
這些文件是什麼?
我想知道在讀取文件名時,這些奇怪的文件是否也會被d_name提及?
問候
按照慣例,名稱以點開頭的文件隱藏在類Unix操作系統中(請參閱here)。
你當然可以檢查readdir生成的文件名開頭的點,而不是返回/輸出它們。
具有glob擴展和'ls'的shell同意將它們隱藏在*。*'擴展或目錄的默認輸出中。沒有其他的隱藏的意義,如果沒有返回所有的名字,'readdir()'就沒用了。一種可能的替代設計將有兩種變體,例如'readdir()'和'readdir_hidden()',以便在需要時可以真正看到所有內容,但默認情況下不會。但界面中的極簡主義表明當前的設計更好。 –
〜的文件名endng是編輯器使用的恢復文件。 – cdarke