linux下不解压tar.gz文件查看文件大小

如何 linux系统中不用解压tar.gz文件就可以查看其中的文件大小?方法当然是有的啦。

如何不解压tar.gz文件查看其中的文件大小
tar tvf my_file.tar.gz

输出形如:
-rwxr-xr-x root/root    2348366 2010-10-26 11:09:46 File_1.txt
-rwxr-xr-x root/root   2383552 2010-10-26 12:52:45 File_2.txt
-rw-r–r– root/root    89106866 2010-12-20 14:30:01 File_3.txt

从左起第三列数据就是文件大小(单位:字节),第6列就是文件名。如果要看得更清楚一点,用awk来过滤一下输出的结果:
tar tvf my_file.tar.gz | awk '{print $3, $6}'
这样就只输出第3和第6列,输出形如:
2348366  File_1.txt
2383552  File_2.txt
89106866  File_3.txt

如果要以KB/MB/GB来显示文件大小,可以用第3列除N个1024,例如,如果要显示为GB,则:
tar tvf my_file.tar.gz | awk '{print $3/1024/1024/1024, $6}'
字节数连除3个1024,就是GB了,输出形如:
0.00218708    File_1.txt
0.00221985    File_2.txt
0.0829872    File_3.txt

如果对一个超大的文件(例如,上百G),并且压缩包里包含很多文件的话,这个过程将很漫长,让shell命令在后台执行,并将结果输出到一个文件中是一个比较合理的做法,如下:
nohup tar tvf my_file.tar.gz | awk '{print $3/1024/1024/1024, $6}' > /root/result.txt &

nohup 是保证shell命令无中断(网络状况不佳时,SecureCRT等客户端软件有可能中断与服务器的连接,从而命令还没执行完就被中断了),重定向符就不用说了,最后结果保存到了/root/目录下的result.txt文件中。

您可能感兴趣的文章:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值