行とスペースで区切られたコマンドによるパイププロセスの出力

行とスペースで区切られたコマンドによるパイププロセスの出力

作業中のシステムで実行されているジョブを頻繁にキャンセルする必要がある場合があります。私の仕事は次のように確認できます。

$ showq|grep jquick
2001744              jquick    Running   120    00:08:26  Mon Apr 11 11:06:02
2002020              jquick    Running   120    00:22:04  Mon Apr 11 11:19:40
2003328              jquick    Running   240     1:43:34  Mon Apr 11 12:41:10
2006300              jquick    Running   120     4:59:16  Mon Apr 11 15:56:52
2006312              jquick    Running   120     4:59:16  Mon Apr 11 15:56:52

今私がやっていることは、各ジョブIDを手動でキャンセルすることです$ canceljob 2001744 2002020 2003328 2006300 2006312

ジョブIDを直接パイプラインに接続するためにこの出力をフィルタリングするにはどうすればよいですかcanceljob

ベストアンサー1

努力する

showq | awk '/jquick/ { printf "canceljob %d\n",$1}'

可能であれば bash にパイプするか

 showq | awk '/jquick/ { print $1}' | xargs canceljob

おすすめ記事