在我的powershell脚本中,我解压缩了一个“filename.zip”文件,一旦完成,我想交叉检查我解压缩并放在文件夹中的文件数是否等于“文件名”中的文件数。压缩”。有没有办法做到这一点?因为有时很少有文件被遗漏。
注意:我使用的是PowerShell版本2.0
$zip_file="D:\speter071714\OMS.DODU.Qa.$version_no.zip"
$DODU_folder="D:\speter071714\DODU\"
echo "Extracting the DODU.zip file"
$shell = New-Object -ComObject shell.application
$zip1=$shell.NameSpace("$zip_file")
foreach ($item1 in $zip1.items())
{
$shell.Namespace("$DODU_folder").CopyHere($item1)
}
我基本上想要比较$zip_file="D:\speter071714\OMS.DODU.Qa.$version_no.zip"
中的内容
和$DODU_folder="D:\speter071714\DODU\"
答案 0 :(得分:0)
如果缺少一些文件,则表示您的解压缩方法不是很好。如果您有更好的方法,请参阅此处:How to read contents of a csv file inside zip file using PowerShell
但是关于你的方式,你已经拥有$zip1.items()
中zip文件中的所有项目,因此你可以检查每个项目的Name
属性,然后查看输出文件夹中是否存在该文件