繁体   English   中英

使用PowerShell脚本运行应用程序(带有命令)

[英]PowerShell script to run application (with commands)

我正在尝试使用内置命令从C:\\ Program Files \\ APP \\ app.exe运行应用程序。 从命令提示符运行时,可以获得所需的结果。 但是我想使用脚本来检查服务器的其他组件以及此组件,以避免手动运行此命令。 我尝试了下面提到的两个脚本,但没有任何输出。 它只是打开命令提示符窗口,运行结果,然后关闭命令提示符,但是我想在输出文件中获取输出。 有什么建议么? 请告诉我。

$Output = "C:\Information.txt"
Start-Process -FilePath "C:\Program Files\APP\app.exe" -ArgumentList "query mgmtclass" | Out-File $Output

此外,我也尝试过-

$Output = "C:\Information.txt"
Start-Process -FilePath "C:\Program Files\APP\app.exe" -PipelineVariable "query mgmtclass" | Out-File $Output

我还以为我可以编写一个批处理文件,并在temp目录中写入输出,并使用下面提到的命令获取这些输出-

Get-Content -Path 'C:\Program Files\tivoli\tsm\baclient\dsmerror.log' | select-object -last 15

您可以尝试使用RedirectStandardOutput参数代替| Out-File | Out-File

$Output = "C:\Information.txt"
Start-Process -FilePath "C:\Program Files\APP\app.exe" -PipelineVariable "query mgmtclass" -RedirectStandardOutput $Output

更新:

您得到的错误(“缺少参数”)的含义恰恰是它所说的。 我看不到您为得到该错误而运行的代码行,但是我可以通过省略RedirectStandardOutput的值来进行复制。 此示例使用splatting,因此代码行不会太长,您可以更清楚地看到什么是RedirectStandardOutput

$Output = "C:\Information.txt"
@{
   FilePath = "C:\Program Files\APP\app.exe"
   PipelineVariable = "query mgmtclass"
   RedirectStandardOutput = $Output
} | % { Start-Process @_ }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM