Linux可以通过两种方法修改进程名
1、//ps 进程名显示a.out;ps -aux显示test123456;killall -9 a.out可以杀掉程序
strcpy(argv[0], "test123456");
2、 //ps 进程名显示test;ps -aux显示a.out;killall -9 test可以杀掉程序
prctl(PR_SET_NAME, "test", 0, 0, 0);
代码示例(源码main.c,可执行文件a.out):
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <sys/prctl.h>
int main(int argc, char **argv)
{
//ps 进程名显示a.out;ps -aux显示test123456;killall -9 a.out可以杀掉程序
strcpy(argv[0], "test123456");
//ps 进程名显示test;ps -aux显示a.out;killall -9 test可以杀掉程序
//prctl(PR_SET_NAME, "test", 0, 0, 0);
printf("name:%s\n", argv[0]);
while(1)
{
sleep(1);
}
return 0;
}