对于bash来说,它是:
command; echo $!但是它不适用于csh (在Unix Tru64中,没有bash )。如何获得任意启动过程的PID?
发布于 2014-11-19 23:34:14
使用% pidof command或% ps。
示例用法:
$ csh
% sleep 420 &
[1] 28147
% pidof sleep
28147
% sleep 250 &
[2] 28154
% pidof sleep
28154 28141
% ps
PID TTY TIME CMD
28059 pts/5 00:00:00 bash
28146 pts/5 00:00:00 csh
28147 pts/5 00:00:00 sleep
28154 pts/5 00:00:00 sleep
28157 pts/5 00:00:00 ps您可以很容易地将ps命令的输出输送到所需的行和PID。最后一个已启动的进程很可能在任何时候出现在第四行(包括头)上。除非,也就是说,您立即启动c-shell,而不是从bash输入它,在这种情况下,它将位于第三行。
示例:
$ csh
% sleep 420 &
[1] 28441
% ps | awk 'NR == 4 {print $1}'
28441发布于 2018-01-11 16:27:45
在csh中使用$$获取当前进程ID。
示例:
%回波$$
25352
https://stackoverflow.com/questions/27025364
复制相似问题