これは* nixのことかもしれませんが、よくわかりません。
余分なバイトはファイルの最後の行末用です。Linuxテキストエディタでは、この行末を最後の行の後に追加するのが一般的です。
おそらく末尾の改行文字。たとえば、「a」のみを含むテキストエディタで作成されたファイルには、実際には2バイトが含まれる場合があります。
$ cat /tmp/test_text | hexdump -C
00000000 61 0a |a.|
00000002
ただし、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