linux下使用Shell显示运行脚本进程号的方法
2015-12-17 00:00
731 查看
一般来说,我们可以使用pidof来显示运行进程的进程号,但是,如果是想获取运行脚本的进程号的话,用pidof是获取不到的。以sh运行脚本test.sh为例,test.sh脚本如下:
执行如下命令sh test.sh,脚本就会进入死循环。执行pidof 'sh test.sh'命令,获取结果为空;执行pidof sh却可以得到以下所有sh执行的脚本进程,包括我们的test.sh进程。因此,为了获取到对应进程号,我们可以使用以下两种方法:
ps
ps是传统方法,只是这里直接使用命令“ps -ef | grep 'sh test.sh'”,会额外得到一个grep进程,如下:
所以这里只需要排除即可,如下:
pgrep
pgrep的man结果如右:pgrep, pkill - look up or signal processes based on name and other attributes。可见,pgrep就时专门基于名称等来获取进程号的,直接使用如下命令即可:
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进程,如下:
所以这里只需要排除即可,如下:
pgrep
pgrep的man结果如右:pgrep, pkill - look up or signal processes based on name and other attributes。可见,pgrep就时专门基于名称等来获取进程号的,直接使用如下命令即可:
相关文章推荐
- android wifi 无线调试
- 运维入门
- 动态清空 nohup 输出文件
- install scrapy with pip and easy_install
- Linux Shell常用技巧
- Shell 脚本编程陷阱
- ActionScript 3.0 编程体验
- C#实现进程管理的启动和停止实例
- shell字符串操作详解
- DOS中判断进程是否存在的方法
- Shell中删除某些文件外所有文件的3个方法
- C#进程监控方法实例分析
- Ruby中执行Linux shell命令的六种方法详解
- 批处理 结束麦咖啡进程的代码
- VB使用shell函数打开外部exe程序的实现方法
- Shell编程的一些知识集合
- Shell中的for和while循环详细总结
- Windows Script Host之用vbs实现[浏览文件夹]功能
- 什么是Shell?Shell脚本基础知识详细介绍
- Shell脚本中引用、调用另一个脚本文件的2种方法