Files

哪些類型的文本文件不應以換行符結尾?

  • January 18, 2021

這個問題這個問題指出,通常標準是用換行符結束文本文件以滿足 POSIX 標準,這是 GNU 工具和其他 POSIX 兼容工具所期望的。

但是,作為 C# 開發人員,我知道處理csproj文件的工具通常不包含終止換行符。我還看到了從文件json中刪除終止換行符的工具。xml我認為如果處理文件的常用工具最終會再次刪除它們,那麼避免在文本文件末尾包含換行符是有意義的。

那麼,由於工具的原因,哪些類型的文本文件不應以換行符結尾?

雖然不完全是文本文件,但符號連結實際上是一個包含一段文本的小文件(通常適合 inode 本身,因此不需要為文件分配數據塊)。

符號連結可以以換行符結尾,但在最常見的情況下不應該這樣。

另一種不應該(當然不能)以換行符結尾的文件是空文件。

在 UNIX 中,文本文件要麼是空的,要麼包含一個或多個可能為空的行,每行都以換行符結束。如果最後一行沒有被換行符終止,則該文件不是正確的文本文件。

空文件根本不包含任何字節;添加換行符的那一刻,您已將其“類型”從空更改為非空。

引用自:https://unix.stackexchange.com/questions/574157