The C language implements an example of a way to see if a process exists

  • 2020-05-26 09:50:09
  • OfStack

This article demonstrates an example of how the C language implementation can see if a process exists. I will share it with you for your reference as follows:


#include<unistd.h>
#include<sys/types.h>
#include<sys/wait.h>
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
#include<limits.h>
#define BUFSZ 150
void err_quit(char *msg)
{
  perror(msg);
  exit(EXIT_FAILURE);
}
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("not found\n");
    else
      printf("process :tdv1 total is %d\n",count);
  }
  pclose(fp);
  exit(EXIT_SUCCESS);
}

I hope this article has been helpful to you in the programming of C language.


Related articles: