如何在不使用PowerShell扩展的情况下了解.cab文件内容的大小?

时间:2014-10-13 11:43:41

标签: windows powershell cab

例如,我有文件demo.cab。 我想知道demo.cab中所有文件的大小(提取!)。我不想从中提取文件。

如何使用Windows PowerShell执行此操作?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您必须使用cabarc.exe工具。使用l参数列出cabinet文件的内容。 由于它输出了一些未经编辑的文本,我们跳过前9行。然后我们将“多个空格”替换为空格,从而创建一个csv文件。最后我们调用measure-content来获取文件大小的总和:

cabarc.exe l .\hpchl118.cab > c:\temp\cab.txt
((gc C:\temp\cab.txt |skip -First 9) -replace '\s+',' ' | `
convertfrom-csv -delimiter " " -Header "file","size","date" | `
measure -property size -Sum | select  -expand sum)/1MB