int isproc(int pid, char *exe);
int main(int argc, char **argv) { int status; status = isproc(atoi(argv[1]), argv[2]); printf("file is %d\n", status); }
int isproc(int pid, char *exe) { char procfile[80]; char null[40]; char exename[80]; FILE *fp; sprintf(procfile, "/proc/%d/stat", pid); if (access(procfile, F_OK) != 0) { return 0; } if (exe == NULL) { return 1; } if ((fp = fopen(procfile, "r")) == NULL) return 0; fscanf(fp, "%s %s",null, exename); fclose(fp); if (strstr(exename, exe) != NULL) return 1; return 0; }
Copyrights © - Joinc, All Rights Reserved. Inherited From - Yundream Rebranded By - Joonphil
설명
사용방법
- pid : 검사하고자 하는 프로세스의 PID
2. exe : 검사하고자 하는 프로세스의 이름 3. return : 프로세스가 존재하면 1, 그렇지 않으면 0을 리턴한다. exe가 NULL일경우 PID만을 가지고 프로세스 생존여부를 확인한다.int main(int argc, char **argv) { int status; status = isproc(atoi(argv[1]), argv[2]); printf("file is %d\n", status); }코드
int isproc(int pid, char *exe) { char procfile[80]; char null[40]; char exename[80]; FILE *fp; sprintf(procfile, "/proc/%d/stat", pid); if (access(procfile, F_OK) != 0) { return 0; } if (exe == NULL) { return 1; } if ((fp = fopen(procfile, "r")) == NULL) return 0; fscanf(fp, "%s %s",null, exename); fclose(fp); if (strstr(exename, exe) != NULL) return 1; return 0; }토의
변경사항
2004/01/08
Recent Posts
Archive Posts
Tags