我很确定你不能这样做,但也许有人有一些奇怪的技巧。
有没有办法让评论(#blahblah)显示在 ps 输出中?
我的问题是我有一个脚本——我们称之为“myscript.sh”——它的描述性不是很好。
我很乐意能够做这样的事情:
./myscript.sh #Running on 10.10.45.10
并让 ps 输出注释行,而不只是说“myscript.sh”
我能想到的破解它的唯一方法是将注释放在一个变量中,grep 出“myscript.sh”PID,然后从 /proc/PID/environ 读取该变量。但这非常难看,并且需要 root。
答案1
使用 zsh,您可以执行以下操作:
#! /bin/zsh -
(($+ARG0_SET)) || ARG0_SET= ARGV0="#Running on 10.10.45.10" exec zsh "$0" "$@"
ps -f -p "$$"
运行时给出:
~$ ./a
UID PID PPID C STIME TTY TIME CMD
chazelas 20157 8822 0 21:51 pts/1 00:00:00 #Running on 10.10.45.10 ./a
等价的ksh93
是:
#! /bin/ksh93 -
((${#ARG0_SET})) || ARG0_SET=yes exec -a "#Running on 10.10.45.10" ksh93 "$0" "$@"
ps -f -p "$$"