exec*()之后将显示什么名称?

exec*()之后将显示什么名称?,c,linux,unix,C,Linux,Unix,如果在myProgramI调用 execv("otherProgram", argv); ps将显示什么名称我的程序,其他程序或argv[0]的值?ps显示的名称是否与killall匹配的名称相同 ps将显示什么名称 你为什么不试试呢 它应该显示argv[0],这取决于您向ps请求什么。 在Linux上,使用Debian的ps: “ps-o comm”将显示传递给execve()的文件名的基本名称-该文件名可能与argv[0]匹配,也可能与argv[0]不匹配ps-oargs'将向您显示整个命

如果在
myProgram
I调用

execv("otherProgram", argv);
ps
将显示什么名称<代码>我的程序,
其他程序
argv[0]
的值?
ps
显示的名称是否与
killall
匹配的名称相同

ps将显示什么名称

你为什么不试试呢


它应该显示argv[0]

,这取决于您向ps请求什么。 在Linux上,使用Debian的ps:

“ps-o comm”将显示传递给execve()的文件名的基本名称-该文件名可能与argv[0]匹配,也可能与argv[0]不匹配ps-oargs'将向您显示整个命令行(前面可能有一个解释器)。这将包括argv[0],但不限于此


“ps”本身默认为前者;'“ps-f”和“ps-l”是后者。

我不确定是否每个系统上都是相同的。我试着用谷歌搜索,但找不到明确的答案,所以我认为如果有人知道的话,这是一个确定答案的好地方。根据BSDish系统上使用的
argv[0]
,那么什么名字将
killall
匹配?Debian的killall有几十行代码,可以找出一个名字,以各种不同的方式匹配。您最好直接查看它(或者更确切地说,查看您的发行版的killall)。