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;}