小智 18

可能是尾随的换行符。例如,在文本编辑器中创建的仅包含 'a' 的文件实际上可能包含 2 个字节:

$ cat /tmp/test_text | hexdump -C
00000000  61 0a                                             |a.|
00000002
Run Code Online (Sandbox Code Playgroud)

但是,使用echo -n(无新行)给我们的大小为 1 个字节:

$ echo -n 'a' > /tmp/test_text 
$ ls -l /tmp/test_text 
-rw-r--r--  1 redacted  redacted  1  1 Sep 21:09 /tmp/test_text
$ cat /tmp/test_text | hexdump -C
00000000  61                                                |a|
00000001
Run Code Online (Sandbox Code Playgroud)


Ale*_*lex 16

一个额外的字节用于文件末尾的行尾,Linux 文本编辑器在最后一行之后添加这一行尾是很常见的。