例如,我有文件demo.cab。 我想知道demo.cab中所有文件的大小(提取!)。我不想从中提取文件。
如何使用Windows PowerShell执行此操作?
感谢您的帮助!
答案 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