`tar --list -v` 可以以人类可读的格式列出文件大小吗?

zhe*_*oli 6 size tar

我想tar详细列出文件的成员,并以人类可读的格式而不是字节显示文件大小,是否tar可以选择这样做?

Ste*_*itt 10

没有内置tar选项,但您可以过滤其输出。例如,使用humanize

#!/usr/bin/env python

import fileinput
import humanize

for line in fileinput.input():
    (perm, owner, size, date, time, filename) = tuple(line.split())
    print '{0} {1} {2:>9} {3} {4} {5}'.format(perm, owner, humanize.naturalsize(size, gnu=True), date, time, filename)
Run Code Online (Sandbox Code Playgroud)

将其另存为eg humantvf,然后

tar tvf ... | ./humantvf
Run Code Online (Sandbox Code Playgroud)