【发布时间】:2012-06-25 04:12:13
【问题描述】:
我正在学习 java 中的 Runtime 类,并正在测试其中命令行指令的使用。我正在尝试使用 Runtime.getRuntime().exec(...); 远程关闭计算机;当我运行它时,没有错误,但指定的机器没有关闭。我不知道为什么。
代码:
import java.io.IOException;
class shutdownVirus {
public static void main(String[] args) throws IOException {
Runtime.getRuntime().exec("shutdown -m \\\\T12-LEOPARDIJ -s -t 10");
}
}
任何帮助将不胜感激。 谢谢
【问题讨论】:
-
当您直接从命令行运行命令时(中间没有 Java),该命令是否按预期工作?
-
exec方法返回一个Process对象。调用它后等待一段时间并检查返回的Process对象的exitValue和/或通过读取getInputStream()和getErrorStream()返回的流来检查是否有写入标准的内容或错误输出。 -
不,它说“T12-LEOPARDIJ- 访问被拒绝。(5)
-
在调用进程对象后你将如何等待时间?你是说从流程对象的流中读取?
-
您可能想试试 [this][1]。 [1]:stackoverflow.com/questions/25637/…