
一般的な形式に従わない出力から空の列をどのように抽出できますか?
たとえば、と入力すると、ps -ef
すべてのプロセス、プロセスIDなどが表示されます。最後の列または特定の列のみをインポートできる方法は何ですか?
答え1
オプションを使用すると、表示する-o
フィールドを指定できます。でman ps
検索または使用できる利用可能なフィールドのリストps L
。
たとえば、を使用すると、ps -eo user,command
次のようにユーザー名とコマンドが表示されます。
root /bin/login --
root /sbin/getty
およびパラメータを使用することもできます-O
。これにより、いくつかのデフォルトフィールドが使用され、指定されたフィールドが追加されますが、出力を解析することをお勧めしますo
。
答え2
おそらくあなたは以下が欲しいでしょう:
ps -eo comm
コマンド名を取得するには、または
ps -eo args
コマンドパラメータの取得または
ps -eo args="Last-Arg" | awk '{print $NF}'
最後のパラメータを取得します。