首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >7z获取未压缩内容的总大小?

7z获取未压缩内容的总大小?
EN

Stack Overflow用户
提问于 2010-10-06 00:53:28
回答 3查看 6K关注 0票数 5

如何在完全解压后获得zip/rar/7z文件内容的大小?在windows和linux下。我考虑过使用7z l filename命令,但我不喜欢文件名干扰计算每个文件大小的代码。

EN

回答 3

Stack Overflow用户

发布于 2016-04-16 13:58:18

7zip的命令行版本7z.exe可以打印压缩和未压缩的文件及其大小的列表。这是使用l标志完成的。

使用以下命令:

代码语言:javascript
运行
复制
7z.exe l path\folder.zip

您还可以包括通配符,该通配符提供文件夹中所有档案的总体总数:

代码语言:javascript
运行
复制
7z.exe l path\*.zip
票数 6
EN

Stack Overflow用户

发布于 2011-04-13 02:31:12

这不能解决你的文件名问题,但对别人和我来说可能足够好了(在cygwin中):

代码语言:javascript
运行
复制
/cygdrive/c/Program\ Files/7-Zip/7z.exe l filename.zip | grep -e "files,.*folders" | awk '{printf $1}'
票数 1
EN

Stack Overflow用户

发布于 2019-07-15 06:27:55

使用Powershell:

代码语言:javascript
运行
复制
'C:\Program Files\7-Zip\7z.exe' l '.\folder-with-zips\*.zip' | select-string -pattern "1 files" | Foreach {$size=[long]"$(($_ -split '\s+',4)[2])";$total+=$size};"$([math]::Round($total/1024/1024/1024,2))" + " GB"

或者如果你想实时观看它的全部内容。

代码语言:javascript
运行
复制
'C:\Program Files\7-Zip\7z.exe' l '.\folder-with-zips\*.zip' | select-string -pattern "1 files" | Foreach {$size=[long]"$(($_ -split '\s+',4)[2])";$total+=$size;"$([math]::Round($total/1024/1024/1024,2))" + " GB"}

如果你多次运行它,别忘了在两次运行之间重置你的"total“变量,否则它只会不断增加

代码语言:javascript
运行
复制
Remove-variable total
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3865892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档