Filenames
名稱為空的文件
我正在編寫一個用於在給定目錄中顯示文件的小元件,我想知道是否需要涵蓋文件名稱為空的情況。
測試顯示結果不明顯,所以我想知道是否有人有明確的資訊
$ touch "" touch: cannot touch `': No such file or directory $ echo > "" bash: : No such file or directory
文件名不能為空。引用Single Unix Specification, §3.170,文件名是:
由 1 到 {NAME_MAX} 個字節組成的名稱,用於命名文件。組成名稱的字元可以從除<slash>字元和空字節之外的所有字元值的集合中選擇。
因此,它必須至少包含 1 個字節,即不能為空。
並不是說根據該定義,這些字元都不需要可見(即,都可以是空白),也不需要列印(都可以是控製字元)。如果您假設文件名是 UTF-8,則不必如此。