使用脚本体作为param和其他参数运行powershell.exe

时间:2013-06-18 13:23:55

标签: powershell command-line

我需要从我的程序运行windows powershell脚本。为此,我只使用包含脚本体本身的字符串arg启动PowerShell进程:

 Process.Start("powershell.exe", "my script body..");

它有效。但我还需要将一些args传递给脚本。它应该看起来像:

Process.Start("powershell.exe", "some args my script body..");
  • 这是一个问题。我知道这是可能的。我找到了description,但那里没有这样的例子。请帮助

2 个答案:

答案 0 :(得分:2)

来自the doc

, 你应该能够做到这样的事情:

process.Start("powershell.exe","-noprofile -file c:\temp\test.ps1 TEST -noexit")

其中TEST是传递给脚本的参数

在重新阅读您的问题后进行编辑:

process.Start("powershell.exe","-noprofile -command {write-host $args[0] } -args 'test'")

答案 1 :(得分:0)

工作解决方案:

Process.Start("powershell.exe", "-noexit -command &{write-host $args[0]} arg1Value arg2Value");