如何从c程序中获取进程名称?

时间:2014-01-13 11:53:13

标签: linux embedded-linux

在linux中的C程序中,我们可以使用getpid()getppid()系统调用来获取进程的pid和ppid,

同样,是否有任何系统调用来获取进程/当前进程的名称?

3 个答案:

答案 0 :(得分:5)

您可以查看/proc/$pid/cmdline文件(像普通文件一样打开它,并从中读取零字节分隔的命令行)。

这就是Unix工具ps在Linux上的表现方式。

答案 1 :(得分:1)

了解当前可执行文件名的一种简单方法是argv[0],它告诉您C中当前可执行文件的名称。

答案 2 :(得分:1)

可在此处找到更多解决方案:How to get current process name in linux?

我使用program_invocation_name变量实现了解决方案。