我已经阅读了这个答案stackoverflow的答案,它让我在中途走了一半。这是我需要做的。
执行以下命令:
"c:\myexe.exe <c:\Users\Me\myanswerfile.txt"
如果我从我的powershell脚本中直接运行
&'c:\myexe.exe <c:\Users\Me\myanswerfile.txt'
我收到此错误:
The term 'C:\myexe.exe <c:\Users\Me\myanswerfile.txt' is not recognized as the name of
a cmdlet, function, script file, or operable program. Check the spelling of the name,or
if a path was included, verif that the path is correct and try again.
现在我尝试了几种变体,包括将原始命令放在一个名为$ cmd的变量中,然后传递
如果我附加'&lt;'对于$ cmd变量,命令失败并出现与第一个类似的错误。
我很难过。有什么建议吗?
答案 0 :(得分:18)
如果要运行程序,只需键入其名称和参数:
notepad.exe C:\devmy\hi.txt
如果你想运行一个exe并将stdin重定向到你的例子似乎是一个尝试,请使用:
Get-Content c:devmy\hi.txt | yourexe.exe
如果您需要指定程序的完整路径,那么您需要使用&符号和引号,否则powershell认为您正在定义一个纯字符串:
&"C:\Program Files (x86)\Notepad++\notepad++.exe"
答案 1 :(得分:4)
只需使用&
运算符
& "Program\path\program.exe" "arg1" "arg2" ....