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