一、功能介绍
Linux通过命令查找指定的进程是否存在,并返回该进程的PID号。
在程序中可以使用该方法监控指定的程序是否在运行,如果异常退出,可以重新启动指定程序或者系统。
二、执行的命令
2.1 shell脚本代码
代码语言:javascript复制#查找指定进程的PID
find_name=s_app #s_app就是要查找的进程名称
pid_val=`ps -ef | grep $find_name | grep -v grep | awk '{print $2}'`
if [ $pid_val > 0 ]
then
echo "查找的进程存在,对应的PID=${pid_val}"
else
echo "查找的进程不存在"
fi
2.2 C语言代码
代码语言:javascript复制#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
//查找指定的进程的PID号并返回
int find_pid(const char *app_name)
{
char cmd_buff[100];
int cnt;
sprintf(cmd_buff,"ps -ef | grep %s | grep -v grep | awk '{print $2}'",app_name);
FILE *fp=popen(cmd_buff,"r");
if(fp==NULL)
{
return -1;
}
cnt=fread(cmd_buff,1,sizeof(cmd_buff)-1,fp);
cmd_buff[cnt]='