-1

我知道通过在终端中使用命令

date --set="2011-12-07 01:20:15.962"

您实际上可以更改系统时钟,所以我在 Java 中尝试了它并提出了以下语句

Process p = Runtime.getRuntime().exec("date --set=\"2011-12-07 01:20:15.962\"");

但它无法设置时钟。

你知道伙计们它是如何工作的吗?

前提:机器是Slackware,权限是root级别

4

2 回答 2

2

这行代码有两个问题:

Process p = Runtime.getRuntime().exec("date --set=\"2011-12-07 01:20:15.962\"");

或者,调用 shell 作为进程,并传入一行代码:

.exec("sh", "-c", "date --set=\"2011-12-07 01:20:15.962\"")
于 2013-09-08T09:37:19.167 回答
2
Process p=Runtime.getRuntime().exec(new String[]{"date","--set","2011-12-07 01:20:15.962"});

上面的陈述就像魔术一样起作用。@Howard Gou 的“参数应该与程序名称分开”是正确的

命令语句的部分应使用字符串数组传递。

于 2013-09-08T09:55:57.660 回答