我目前正在尝试更改进程的进程名称,以便我可以更轻松地使用htop,top,….我想将此代码LD_PRELOAD转换为另一个进程,以便它由environemt变量重命名.
我在互联网上发现了很多东西,但没有任何作用:
prctl(PR_SET_NAME,"Test");
这不起作用,因为htop不尊重名称.
Nginx setproctitle(Link)也不起作用,因为它剥离了参数(进程需要的参数).
我尝试了所有我发现的东西,现在我没有想法.
这在Linux中甚至可能吗?如何?
最佳答案
只需通过shell脚本或程序通过exec运行程序,并将所需的名称作为argv [0]传递:
#/bin/bash
exec -a fancy_name a.out ...
或C/C++:
execl( "./a.out","fancy_name",... );