使用powershell / 7za.exe提取多个zip文件?

时间:2015-04-28 06:40:30

标签: powershell 7zip

以下代码

ls *.zip | % { c:\bin\7za.exe e $_ -o..\..\unzipped }
ls *.zip | % { c:\bin\7za.exe e $_.name -o..\..\unzipped }

收到以下错误消息。是PowerShell调用exe文件约定问题吗?

Error:
Incorrect command line

Error:
Incorrect command line

Error:
Incorrect command line
....

2 个答案:

答案 0 :(得分:3)

这与7-ZIP命令行7za.exe工具有关。要将相对路径用作输出目录,请将其包装为双引号

ls *.zip | % { c:\bin\7za.exe e $_.FullName -o"..\..\unzipped" }

请注意,路径将相对于当前目录,而不是存档或7za.exe

答案 1 :(得分:1)

我发现以下脚本有效。

ls *.zip | % { c:\bin\7za.exe e $_ `-o..\..\unzipped }

需要在-o前添加反引号。但不知道原因。也许-o将被解释为powershell的选项而不是可执行文件?