【发布时间】:2013-03-23 15:16:36
【问题描述】:
在unix中很容易得到前一个进程的PID-
echo $!
但是,假设我通过 Java 执行 unix 命令-
Process process=Runtime.getRuntime().exec("myScript.sh");
现在,我现在如何获取“myScript.sh”的PID也通过Java??
例如-
在 Unix 中,我们会这样做——
1.执行myScript.sh
2.执行ps -ef | grep -i "myScript.sh" | grep -v grep
输出会像-
UID PID PPID C STIME TTY TIME CMD
userprod 11764 28386 0 05:57:45 pts/3 0:01 myScript.sh
通过 Java 我需要的是 PID,在本例中为“11764”。
p.s.- 脚本也将从 Java 执行,而不是从 shell。
【问题讨论】:
-
@dogbane 谢谢,这就是我一直在寻找的,反思。