ps aux
zeigt auf dem Server ausgeführte Befehle an, zeigt nicht druckbare Parameter jedoch nicht auf nützliche Weise an.
mycmd.sh:
#!/bin/bash
while true
do
sleep 5
done
Ausführen:
/mycmd.sh `printf "\x90\x90\x90"`
Wird geben:
> ps aux
/bin/bash ./mycmd.sh ???
Gibt es eine Möglichkeit, den tatsächlich ausgeführten Befehl aufzulisten? Einschließlich der nicht druckbaren Zeichen?
Antwort1
Sie können verwenden pstree
, wodurch die Argumente angezeigt werden, z. B. für PID 18592:
$ pstree -a 18592
bash /tmp/mycmd.sh \220\220\220
oder Sie schauen direkt /proc
zum Ablauf rein:
$ cat -v /proc/18592/cmdline | sed 's/\^@/ /g;s/$/\n/'
bash /tmp/mycmd.sh M-^PM-^PM-^P