ref: 6c5e9f73197f0e6bfc59119541312a1d281133b2
dir: /sys/src/libc/9sys/procsetname.c/
#include <u.h> #include <libc.h> void procsetname(char *fmt, ...) { int fd, n; char buf[128]; va_list arg; snprint(buf, sizeof buf, "/proc/%lud/args", (ulong)getpid()); fd = open(buf, OWRITE|OCEXEC); if(fd < 0) return; va_start(arg, fmt); n = vsnprint(buf, sizeof buf, fmt, arg); va_end(arg); write(fd, buf, n+1); close(fd); }