$ ps -l -o ruid,euid,rgid,egid,sess -p $$
error: conflicting format options
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details see ps(1).
$ ps -F -o ruid,euid,rgid,egid,sess -p $$
error: conflicting format options
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details
$ ps -w -o ruid,euid,rgid,egid,sess -p $$
RUID EUID RGID EGID SESS
1000 1000 1000 1000 5678
どのフォーマットオプションが互いに衝突するのか疑問に思います。
これらのエラーを回避するにはどうすればよいですか?
同じエラーなしで3番目のコマンドが成功するのはなぜですか?
ただ現在のプロセスに関する追加情報を表示したいので、を通じて-Fl
指定されたいくつかのフィールドを使用して作業します-o
。
ありがとうございます。
答え1
これは文書では明確ではありませんが、-o
他のほとんどの書式指定子と競合します。つまり出力用に選択される列を決定するオプション(Unixスタイルでは、、、; -F
、および、-j
-l
-f
-M
次へ追加選択に記載されている必要があります-o
)と競合しないでください。その理由は、列リストを明示的に指定すると、事前定義された型も使用できないためです。
-w
-o
フォーマット制御ではなく出力制御なので使用できます。選択した列の出力を変更します。
便利かもしれません-O
。同様に動作します-o
が、いくつかの定義済み列(プロセス識別子、状態、TTY、実行時間、およびコマンドライン)を追加します。