700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Linux shell:脚本判断进程是否正在运行

Linux shell:脚本判断进程是否正在运行

时间:2019-11-04 22:35:48

相关推荐

Linux shell:脚本判断进程是否正在运行

1、命令

其中以上两者输出的不同是由于后者加上了wc命令用于计算,这里-l计算行数。除此之外,ps的参数aux和-ef的区别就在于显示进程的风格(aux是BSD风格,而-ef是System V风格)和信息不同(COMMADN列如果过长,aux会截断,而-ef不会),但如果我们只是用来查看程序是否在运行则无所谓,两者效果一样。

解析

|表示管道,左端写入,右端读出;

grep为搜索命令,-v表示反向查询,grep -v grep表示去除包含grep的项;

wc -l表示显示行数;

ps及以下参数查看进程信息:

-e:显示所有进程

-f:全格式

-a:显示终端上的所有进程,包括其他用户的进程

-u:以用户为主的格式来显示程序状况

-x:显示所有程序,不以终端来区分

参考文章:ps -ef 和 ps aux 的区别

2、运用示例

根据前面命令我们可以用在脚本里面进行一系列的自动化操作,比如以下参考例子:

#!/bin/shwhile truedo# 方式 1process=`ps aux | grep 进程名 | grep -v grep`;if [ "$process" == "" ];thenecho not runningelseecho runningfi# 方式 2processNum=`ps -fe | grep 进程名 | grep -v grep | wc -l`if [ $processNum -eq 0 ];thenecho not runningelseecho runningfisleep 10done

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。