0

我正在使用 Powershell v2 运行wzunzip.exe以解压缩两个 zip 文件并将它们移动到临时目录中。这是我到目前为止...

$unzip = & 'C:\Program Files\pathTo\wzunzip.exe'
$unzip_src = Join-Path $pathTo "p17694377_121020_MSWIN-x86-64_1of8.zip"
$unzip_dst = $pathToDst

iex "$unzip -min -d $unzip_src2 $unzip_dst"

首先在执行时弹出帮助菜单,这是我不想要的,然后出现此错误

术语“WinZip”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。

我不知道为什么我会得到帮助菜单,因为我正在传递-min参数。我想如果我可以阻止帮助菜单,我的错误可能会消失。

此外,我还没有添加任何代码来解压缩我需要的两个文件,直到我可以成功解压缩其中一个文件。

有任何想法吗?

4

2 回答 2

2

我想到了 ...

Start-Process -filepath "S:\Program Files\winzip\wzunzip.exe" -ArgumentList "-d $unzip_src $unzip_dst"

使用Start-Process我成功地将文件解压缩到指定位置。解压缩时我得到另一个弹出窗口,但我知道我可以添加其他参数来阻止弹出窗口出现。

感谢大家的帮助!

于 2015-09-03T14:11:28.300 回答
1

试试这个方法:

$unzip = '"c:\program files\winzip\wzunzip.exe"'
$test_path = 'C:\Users\user\Desktop'
$unzip_src = "`"$test_path\test.zip`""
$unzip_dst = "`"$test_path\test_unzipped`""
$command = "$unzip -e -d $unzip_src $unzip_dst"

iex "& $command"
于 2015-09-02T18:32:26.393 回答