【发布时间】:2014-11-12 14:53:41
【问题描述】:
我正在尝试从 java 程序中调用 powershell 命令,并且我可以使用以下代码来实现它。但问题是执行 powershell 命令后代码不会停止。
此代码打印 powershell 命令输出。但它正在执行无限[打印输出后执行不停止]。
有谁知道这里的错误是什么?
Java 代码:
public class PowerShellHelper
{
public ProcessBuilder processbuilder = null;
public Process process = null;
public PowerShellHelper()
{
}
String execPowerShell()
{
String command = "Get-WmiObject Win32_Process -filter ProcessId=5988";
String[] cmds = {"powershell.exe",command};
String result= null;
try
{
processbuilder = new ProcessBuilder(cmds);
processbuilder.redirectErrorStream(true);
process = processbuilder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = null ;
while (true)
{
line = r.readLine();
if(line == null) {break;}
System.out.println(line);
}
process.getOutputStream().close();
}
catch(Exception e)
{
System.out.println("Exception "+e);
}
return result;
}
public static void main(String[] args)
{
PowerShellHelper psh = new PowerShellHelper();
psh.execPowerShell();
}
}
【问题讨论】:
标签: java eclipse powershell command