UNIX 標準是否要求區分大小寫的檔案系統?

UNIX 標準是否要求區分大小寫的檔案系統?

一個答案這個問題提到了OSX 的 UNIX 03 認證。現在 AFAIK OSX 的標準檔案系統是/曾經是高頻FS,它“保存創建或重命名的文件的大小寫,但在操作中不區分大小寫”(即它是大小寫-儲存但案例-不敏感的)。

UNIX 認證或 POSIX 是否需要案例-敏感的檔案系統?

答案1

根據 POSIX 規範

系統可能提供非標準擴充。這些是 POSIX.1-2008 不需要的功能,可能包括但不限於:

--剪斷--

  • 不合格的檔案系統(例如,_POSIX_NO_TRUNC 為 false 的舊檔案系統、不區分大小寫的檔案系統或網路檔案系統)

--剪斷--

因此,看起來區分大小寫是常態,但支援不相容(不區分大小寫)的檔案系統並且仍然可以將您的產品稱為 UNIX,只要它也支援區分大小寫的檔案系統。

(編輯)

其實看看規範的這一部分

關於檔案名稱中的大小寫折疊,提出了兩項建議:

  1. 刪除以前允許大小寫折疊的所有措辭。

基本原理

大小寫折疊與可移植檔案名稱符集和檔案名稱定義(除 <slash> 和 null 之外的所有位元組)不一致。沒有已知的實作允許除 <slash> 和 null 之外的所有位元組也進行大小寫折疊。

  1. 將“儘管不建議這樣做”更改為“儘管強烈建議不要這樣做”。

基本原理

如果 POSIX.1 中必須包含大小寫折疊,則措詞應更強硬以阻止這種做法。

共識選擇了第一個提案。否則,符合要求的應用程式必須假設在不需要時會發生大小寫折疊,但在需要時不會發生。

所以它看起來像是故意留下歧義的——既沒有明確允許也沒有明確禁止。

相關內容