今日、psコマンドを使用すると、指定された名前のプロセスIDが見つかりません。慎重な検索では、psコマンド検索の結果のプロセス起動のコマンドとパラメーター情報が切り捨てられるだけです。
問題のインスタンス
ユーザーwanngがプロセスwanng_qytrunkcrossを開始します。起動パラメーターはconfig.luaファイルであり、ps -u wanngを実行してユーザーのプロセスをクエリします。結果は次のとおりです。
[wanng@localhost shell]# ps -u wanng
PID TTY TIME CMD
127271 ? 00:00:01 sshd
127272 pts/4 00:00:00 bash
127332 pts/4 00:17:19 wanng_qytrunkcros
結果から、プロセス名と起動パラメーターの表示が切り捨てられていることがわかります
解決策
以下は、man psで見つかった解決策です。次の3つの方法でこの問題を解決できます
wワイド出力。幅を無制限にするには、このオプションを2回使用します
-wワイド出力。幅を無制限にするには、このオプションを2回使用します。
-fフルフォーマットのリストを表示します。このオプションを他の多くのUNIXスタイルのオプションと組み合わせて、列を追加できます。また、コマンド引数が出力されます。-Lとともに使用すると、NLWP(スレッド数)およびLWP(スレッドID)列が追加されます。cオプション、formatキーワードargs、およびformatキーワードcommを参照してください。
-Fエクストラフルフォーマット。-Fが暗示する-fオプションを参照してください。
- psの後に-wwオプションを追加すると、コマンドの実行結果は次のようになります。
[wanng@localhost shell]# ps -u wanng -w w
PID TTY STAT TIME COMMAND
127271 ? S 0:01 sshd: wanng@pts/4
127272 pts/4 Ss+ 0:00 -bash
127332 pts/4 Sl 17:20 ./wanng_qytrunkcross config.lua
- psの後にwwオプションを追加すると、コマンド実行結果は以下のようになります
[wanng@localhost shell]# ps -u wanng ww
PID TTY STAT TIME COMMAND
127271 ? S 0:01 sshd: wanng@pts/4
127272 pts/4 Ss+ 0:00 -bash
127332 pts/4 Sl 17:20 ./wanng_qytrunkcross config.lua
- psの後に-fまたは-Fオプションを追加します。これは、フルフォーマットで表示することを意味します。コマンドの実行結果は次のとおりです。
[wanng@localhost shell]# ps -f -u wanng
UID PID PPID C STIME TTY TIME CMD
wanng 127271 127269 0 13:55 ? 00:00:01 sshd: wanng@pts/4
wanng 127272 127271 0 13:55 pts/4 00:00:00 -bash
wanng 127332 1 3 13:55 pts/4 00:18:30 ./wanng_qytrunkcross config.lua