您的位置:首页 > 编程语言 > C语言/C++

C语言判断当前某一个进程是否存在

2016-07-13 10:58 761 查看
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <limits.h>
#include <sys/types.h>
#include <sys/wait.h>

#define BUFSZ 150

void err_quit(char *msg);

int main(int argc, char *argv[]) {

FILE* fp;
int count;
char buf[BUFSZ];
char command[150];

sprintf(command, "ps -ef | grep ***** | grep -v grep | wc -l" );		//*****代表要监控的进程

if((fp = popen(command,"r")) == NULL)

err_quit("popen");

if( (fgets(buf,BUFSZ,fp))!= NULL ) {

count = atoi(buf);

if(count  == 0)

printf("进程不存在!\n");

else

printf("进程已找到,有%d个!\n",count);
}

pclose(fp);
return EXIT_SUCCESS;
}

void err_quit(char *msg) {

perror(msg);
exit(EXIT_FAILURE);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: