psコマンドの「cmd」と「comm」の違い

psコマンドの「cmd」と「comm」の違い

私はbashとLinuxを初めて使用することに質問があります。私の問題は、pidでプロセス名を印刷したいということです。 Googleでいくつかの方法を見つけました。

  • ps -p <PID> -o cmd

  • ps -p <PID> -o comm

私はXubutnu 14.04を使用しており、最初のコマンド(すべてのPIDで)は次のようになります。

コマンド管理システム

x-セッションマネージャ

第二:

注文する

x セッション管理

ご覧のとおり、2番目の名前は不完全です。また、すべて列名があります。=コマンドの最後に追加すると、列名が消えることがわかりました。読みましたが、と(解釈されているように)の実際の違いをman ps理解できません。commcmdalias

cmdこれらのフラグcommの違いは何ですかps -o

答え1

man ps(for psfrom)によると、procps-ng 3.3.12このオプションはcommコマンド名の変更ではなく実行可能ファイル名のみを表示し、パラメータをcmd文字列のコマンド名として表示し、コマンドパラメータの変更を表示することが可能です。

このコマンドを最後に指定すると、出力文字列がディスプレイの端に表示されるため、名前が切り捨てられます。以下のようにヘッダー消去コマンドを使用して、N出力を列に切り捨てることができます。--cols <N>--no-header

ps -p <PID> -o comm --cols <N> --no-header

関連情報