2017-07-05 14 views

回答

0

Invoke-Expression是调用EXpression,而'.Bat'不是表达式。

所以,如果你想打电话.Bat文件只需c:\batfile.bat可以做的伎俩。

或者如果您想了解invoke-expression将批处理文件中的命令复制到变量中以查看正在执行的代码。

有类似的情况,我必须做同样的事情,而我也用它作为

$prog="cmd.exe" 
$TARGETDIR = 'd:\temp' 
$x='C:\Users\v-chetak\Desktop\1.bat' 
[email protected]("/C";"$x";" >d:\temp\result17.txt") 
Start-Process -Verb runas $prog +$params 

$params将容纳所有你要传递的参数。

+0

如何获取bat文件日志并将它们存储到powershell中的变量中 – john

+0

> d:\ temp \ result17.txt这样做,在这里,由我的1.bat创建的日志被推入> d:\ temp \ result17.txt文件,你可以调整你想要的方式 –

+0

在我的代码中,你可以更改开始进程-Verb runas $ prog + $ params到开始进程$ prog + $ params如果你不想要以管理员模式运行批处理文件 –