grepを使用してカウントを確認する

grepを使用してカウントを確認する

私はsun10 Solarisオペレーティングシステムで作業しており、次のようにテーブルを返すプロセスがありますdmh -q 12

*PROFILE   PRIORITY   COMM_TYPE     QID    # OF MSGS   ATTRIBUTES/VALUES*
      13        999          DC      24            3     32  1865
      13        999          DC      94            1     32  1665
      13        999          DC     157            0     32  1961
      13        999          DC     188            2     32  1784
      13        999          DC     293            0     32  1625
      13        999          DC     294           31     32  1950
      13        999          DC     713            0     32  1601
      13        999          DC     838            0     32  1607
      13        999          DC    1458            0     32  1855

ここでは、メッセージの総数を取得し、それを変数に保存しようとしましたが、うまくいきませんでした。

dmh -q 12 | grep -v'# OF MSGS' | wc -l 

予想される結果は37でなければなりません。

ベストアンサー1

使用awk:

dmh -q 12 | awk 'NR > 1 { sum += $5 } END {print sum}'

その後、列5のすべての値を合計して合計を印刷します。

変数に保存するには、コマンド置換を使用します。

var=$(dmh -q 12 | awk 'NR > 1 { sum += $5 } END {print sum}')

おすすめ記事