Linux显示运行脚本进程号的方法

转自:https://blog.csdn.net/styshoo/article/details/49405019

一般来说,我们可以使用pidof来显示运行进程的进程号,但是,如果是想获取运行脚本的进程号的话,用pidof是获取不到的。以sh运行脚本test.sh为例,test.sh脚本如下:

while true
do
    sleep 1
done

执行如下命令sh test.sh,脚本就会进入死循环。执行pidof 'sh test.sh'命令,获取结果为空;执行pidof sh却可以得到以下所有sh执行的脚本进程,包括我们的test.sh进程。因此,为了获取到对应进程号,我们可以使用以下两种方法:
ps
          ps是传统方法,只是这里直接使用命令“ps -ef | grep 'sh test.sh'”,会额外得到一个grep进程,如下:

Linux显示运行脚本进程号的方法_第1张图片

          所以这里只需要排除即可,如下:

pgrep
          pgrep的man结果如右:pgrep, pkill - look up or signal processes based on name and other attributes。可见,pgrep就时专门基于名称等来获取进程号的,直接使用如下命令即可:

你可能感兴趣的:(linux)