私はbashとLinuxを初めて使用することに質問があります。私の問題は、pidでプロセス名を印刷したいということです。 Googleでいくつかの方法を見つけました。
ps -p <PID> -o cmd
ps -p <PID> -o comm
私はXubutnu 14.04を使用しており、最初のコマンド(すべてのPIDで)は次のようになります。
コマンド管理システム
x-セッションマネージャ
第二:
注文する
x セッション管理
ご覧のとおり、2番目の名前は不完全です。また、すべて列名があります。=
コマンドの最後に追加すると、列名が消えることがわかりました。読みましたが、と(解釈されているように)の実際の違いをman ps
理解できません。comm
cmd
alias
cmd
これらのフラグcomm
の違いは何ですかps -o
?
答え1
man ps
(for ps
from)によると、procps-ng 3.3.12
このオプションはcomm
コマンド名の変更ではなく実行可能ファイル名のみを表示し、パラメータをcmd
文字列のコマンド名として表示し、コマンドパラメータの変更を表示することが可能です。
このコマンドを最後に指定すると、出力文字列がディスプレイの端に表示されるため、名前が切り捨てられます。以下のようにヘッダー消去コマンドを使用して、N
出力を列に切り捨てることができます。--cols <N>
--no-header
ps -p <PID> -o comm --cols <N> --no-header