echoコマンドの出力で値をソートする方法は?

echoコマンドの出力で値をソートする方法は?

コマンドがあります。

pr -m   <(echo -n "dis q(*) where (IPPROCS gt 1)" |
    runmqsc UFISMQ |grep QUEUE |
    awk '{print $1}' |
    cut -c6-100) <(echo -ne "dis q(*) where (IPPROCS gt 1)" |
    runmqsc UFISMQ |grep IPPROCS |
    cut -c11-15 |sed "1 d") |
    awk 'NR>=6&&NR<=13' | 

このコマンドは、MQキューに接続されているアプリケーションの数を見つけるのに役立ちました。出力は次のとおりです

(SYSTEM.BROKER.CONTROL.QUEUE)       (3)
(TO_UFIS)                           (18)
(UFIS_ATC_IN)                       (2)
(UFIS_BELT_IN)                      (2)
(UFIS_COUNTER_IN)                   (2)
(UFIS_FLIGHT_IN)                    (2)
(UFIS_OTHERS_IN)                    (2)
(UFIS_TRIGGER_IN)                   (2)

質問

これで、出力をソートし、値の1つがある場合にのみメール通知をトリガーしたいと思います(0)。これは、MQに接続されたアプリケーションがないことを意味します。

上記の出力をソートして(0)値を見つけるにはどうすればよいですか?

ベストアンサー1

(0)値を使用grepしてメールをトリガーし、このコマンドを使用してsort出力の特定の列の出力を並べ替えることができます。

たとえば、

df -h | sort -nk5

キー5(例:)に対して「数字」(非辞書)ソートを実行しますUse%

おすすめ記事