powershell invoke-expression问题

时间:2013-02-02 15:59:04

标签: powershell

我有一个使用7z提取文件的命令,它可以在DOS命令行中运行。命令是:

"C:\Documents and Settings\e.DEV\My Documents\7z.exe" x -o"C:\Documents and Settings\e.DEV\My Documents\utils" "C:\Documents and Settings\e.DEV\My Documents\rsasecureidtoken411.zip"

现在我必须在powershell中运行upper命令,我使用call operator&调用它(在Powershell命令行中),但它似乎有一些错误。当我按下Enter时,它只会在下一行显示>> ,我必须按Ctrl + c才能停止命令。

PS C:\> & "C:\Documents and Settings\e.DEV\My Documents\7z.exe" x -o"C:\Documents and Settings\e.DEV\My Documents\utils" "C:\Documents and Settings\e.DEV\My Documents\RSASecurIDToken411.zip"
>>
>>
>>
>>
>>
>>
PS C:\>

我也试过invoke-expression,但仍然无法使其发挥作用。任何人都可以帮忙吗?

感谢。

1 个答案:

答案 0 :(得分:4)

试试这个:

[string]$pathToZipExe = "C:\Documents and Settings\e.DEV\My Documents\7z.exe"
[Array]$arguments = "x", "-oC:\Documents and Settings\e.DEV\My Documents\utils", "C:\Documents and Settings\e.DEV\My Documents\RSASecurIDToken411.zip"

& $pathToZipExe $arguments