使用PowerShell提取zip文件

时间:2014-09-25 20:51:44

标签: powershell zipfile

我正在尝试提取一个zip文件,然后由远程人员下载。一旦提取,我将有一个安装包的脚本,但我需要使用压缩文件夹,远程用户没有7zip或类似的东西。

我有这个,但我一直收到错误 -

$shell = new-object -com shell.application
$zip = $shell.NameSpace(“C:\name.zip”)
foreach($item in $zip.items())
{
$shell.Namespace(“C:\temp\name”).copyhere($item)
}

我得到的错误低于 -

You cannot call a method on a null-valued expression.
At line:5 char:43
+ $shell.Namespace(“C:\name”).copyhere <<<< ($item)
    + CategoryInfo          : InvalidOperation: (copyhere:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

代码还有其他问题,但这是一项正在进行的工作,一旦我能够提取它,我将修复值的硬编码。

1 个答案:

答案 0 :(得分:3)

您的提取路径是否存在(“C:\ temp \ name”)?要清楚,该路径中的两个项目都应该是目录。

那应该是已经存在的路径。如果没有,你会得到那个错误。