我需要使用 kill API 终止进程。为此,我需要进程的进程 ID。我尝试使用:
ret = system("pidof -s raj-srv");
但它没有返回正确的值。我不想用这个终止进程:
ret = system("pkill raj");
是否有任何 API 可用于获取进程 ID?
最佳答案
您正在获取系统
的返回状态。那不是pid。你想要这样的东西:
char line[LEN];
FILE *cmd = popen("pidof...", "r");
fgets(line, LEN, cmd);
pid_t pid = strtoul(line, NULL, 10);
pclose(cmd);
关于c - 如何在 C 中获取 Linux 中进程的 PID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8166415/