実行中のプロセスで印刷できないパラメータを表示する

実行中のプロセスで印刷できないパラメータを表示する

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引数を表示する which を使用できます。たとえば、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 

関連情報