tar格式的大小令人困惑

问题描述

我有这些简单的文件,它们的大小分别为2和29:

➜  /tmp/tmp >ll
total 20K
-rw-r--r-- 1 root root   2 9月   3 00:51 a.c
-rw-r--r-- 1 root root  29 9月   3 00:52 c.c

然后我用tar打包它们:

tar -cvf a.tar a.c c.c --format=ustar

使用xxd以十六进制查看打包的文件:

xxd a.tar

Like this:
...
00000400: 632e 6300 0000 0000 0000 0000 0000 0000  c.c.............
...
00000450: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000460: 0000 0000 3030 3030 3634 3400 3030 3030  ....0000644.0000
00000470: 3030 3000 3030 3030 3030 3000 3030 3030  000.0000000.0000
00000480: 3030 3030 3033 3500 3133 3732 3337 3436  0000035.13723746  <-- here 0000 000035
00000490: 3636 3600 3031 3134 3634 0020 3000 0000  666.011464. 0...
000004a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
...
00000500: 0075 7374 6172 0030 3072 6f6f 7400 0000  .ustar.00root...
...

c.c的大小,为什么是35,而不是29。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)