顯示正在運行的進程中不可列印的參數

顯示正在運行的進程中不可列印的參數

ps aux顯示伺服器上執行的命令,但不以任何有用的方式顯示不可列印的參數。

mycmd.sh:

#!/bin/bash
while true
do
        sleep 5
done

執行它:

/mycmd.sh `printf "\x90\x90\x90"`

會給:

> ps aux
/bin/bash ./mycmd.sh ???

有沒有辦法列出正在運行的實際命令?包括不可列印的字元?

答案1

您可以使用pstree它來顯示參數,例如 pid 18592:

$ pstree -a 18592
bash /tmp/mycmd.sh \220\220\220

或者你可以直接查看/proc流程:

$ cat -v /proc/18592/cmdline | sed  's/\^@/ /g;s/$/\n/'
bash /tmp/mycmd.sh M-^PM-^PM-^P 

相關內容