powershell - 调试 Powershell 启动进程行

标签 powershell

我正在使用 Powershell 的标准 ISE 开发一个脚本,该脚本除其他外,还使用预定义的文件路径调用 start-process。这是代码:

$MSTEST ="C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\MSTEST.EXE"
$TESTSETTING="D:\Source\Test\DEV\FIREBIRD\QA\LoadTesting\WebTests\perfvsctlr2.testsettings"
$TESTCONTAINER1="D:\Source\Infinity\DEV\FIREBIRD\QA\LoadTesting\WebTests\Test.AppFx.LoadTesting.Test\LoadTestDefs\Test_Interactive_Peak_Workload.loadtest"
start-process $MSTEST -ArgumentList "/Testsetting: $TESTSETTING /Testcontainer: $TESTCONTAINER1 /resultsfile: $RESULTSFILE" 

当我传递变量,然后尝试从 Powershell 提示符手动执行 start-process 行时,它只会打开一个窗口并关闭它,而不显示错误。到目前为止,我已经使用了 -NoNewWindow 参数,并尝试使用 -noexit 参数从运行行调用 Powershell。到目前为止,还没有运气。

最佳答案

$RESULTSFILE 是如何定义的?

冒号后面不应该有空格(并且通常必须在任何参数中查找空格。您似乎没有空格,但参数中的空格需要正确引用)。

您可以通过使用一些额外参数调用 Start-Process 来获取错误消息(下面的行故意产生错误):

启动进程 $MSTEST -ArgumentList "\testcontainer: file"-wait -NoNewWindow -RedirectStandardError err -RedirectStandardOutput out

关于powershell - 调试 Powershell 启动进程行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21389645/

相关文章:

powershell - Powershell中的“选项”菜单:循环后继续

windows - 拆分一个参数并添加包含 url 中的项目

PowerShell DSC 服务缺少成员

powershell - 将字符串转换为可用变量

powershell - 捕获powershell警告

windows - 如何写 Yes 命令作为这个问题的答案?谢谢

.net - 从 C 中的缓冲区运行程序集 .exe

powershell - Azure Web 应用程序 FTP 550 访问被拒绝

Azure 自动化/运行手册/身份验证

powershell - 如果包含 “*”的代理创建绕过列表失败