1.由進程名獲得進程id: pidof xx , 其中xx是進程名shell
2.由進程id獲得進程名: readlink /proc/xxx/exe,其中xxx是進程的idspa
3.若是是shell程序,由於shell的進程名是相應的shell名,因此不能直接根據shell腳本的名字來獲取其進程id,能夠由如下兩種方法(以sh爲例):orm
(1)經過pidof sh獲得全部的sh進程的pid的集合,而後再經過ps aux|grep xxx.sh獲得的進程的id,來和前面獲得的id進行匹配,若是匹配到的話,就說明匹配的id是該腳本的進程id.進程
(2)pid=`ps gaux | grep xxx.sh | grep -v grep | awk ‘{print $2}’`it