psexec在使用Java运行时暂停
我正在使用psexec在使用Java运行时暂停,java,psexec,Java,Psexec,我正在使用psexec和sc query state=all打印远程服务器上的所有服务。我想解析这个的输出,并且一直在尝试使用BufferedReader来完成这项工作 Runtime rt = Runtime.getRuntime(); String line = null; Process pr = null; pr = rt.exec("test.bat"); BufferedReader input = new BufferedReader(new InputStreamReader
psexec
和sc query state=all
打印远程服务器上的所有服务。我想解析这个的输出,并且一直在尝试使用BufferedReader
来完成这项工作
Runtime rt = Runtime.getRuntime();
String line = null;
Process pr = null;
pr = rt.exec("test.bat");
BufferedReader input = new BufferedReader(new InputStreamReader(pr.getInputStream()));
while((line = input.readLine()) != null) {
System.out.println(line);
}
测试蝙蝠
psexec \\server -u username -p password sc query state= all
当我从命令行窗口运行psexec\\server-u username-p password sc query state=all
时,我得到了这个结果
SERVICE_NAME: Tomcat6
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
SERVICE_NAME: ActiveMQ
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
etc.
但是在Java中,它打印第一个服务,然后停止,所以打印输出是这样的
SERVICE_NAME: Tomcat6
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
您是否尝试过使用等待?。可能程序正在退出而不等待进程终止。尝试使用:
pr = rt.exec("test.bat");
pr.waitFor();
您是否尝试过使用等待?。可能程序正在退出而不等待进程终止。尝试使用:
pr = rt.exec("test.bat");
pr.waitFor();
将psexec与Java一起使用似乎存在一个问题。我改用paexec,一切都很好。在Java中使用psexec似乎有问题。我切换到paexec,一切都很好。是的,我有,它产生相同的结果。是的,我有,它产生相同的结果。