シェルコマンドの出力形式を指定する方法

シェルコマンドの出力形式を指定する方法

私は組み合わせtoppidof注文しました:

top -p $(pidof <process_name>)

pidof <process_name>IDが返されると、コマンドは有効ですtop。ただし、pidof <process_name>IDが複数ある場合、topコマンドは機能しません。

pidof返されたIDの間にスペースがあります。たとえば、次のようになります。123 124 125

コンマでこれらのIDを取得できる場合、123, 124, 125 topコマンドは機能します。出力形式を変更する方法はpidof

awkテキストデータ型を知っています。ただし、awkシェルコマンドを使用して結果を取得する方法はありません。

ベストアンサー1

使用bash:

top -p "$(pname="$(pidof <process_name>)"; echo "${pname// /,}")"

使用tr:

top -p "$(pidof <process_name> | tr ' ' ',')"

使用sed:

top -p "$(pidof <process_name> | sed 's/ /,/g')"

おすすめ記事