按名称获取进程ID

时间:2013-03-28 15:54:50

标签: c++ linux process

我希望在Linux下获得一个名为进程ID的进程ID。

有一种简单的方法吗?

我在C ++上找不到任何可以轻松使用的东西!

2 个答案:

答案 0 :(得分:4)

您可以使用/proc中的信息。

Here就是一个例子。

答案 1 :(得分:4)

如果选择“易于使用”,

char buf[512];
FILE *cmd_pipe = popen("pidof -s process_name", "r");

fgets(buf, 512, cmd_pipe);
pid_t pid = strtoul(buf, NULL, 10);

pclose( cmd_pipe );  

是要走的路。

是的,这很难看,我知道。去阅读pidof源代码要好得多。