ある行から 1 つの項目を取得し、別の行の項目と結合します。

ある行から 1 つの項目を取得し、別の行の項目と結合します。

私は以下を持っています:

2018-11-10 23:57:21 [COMMAND]: sar -u 10 5

AIX host 1 7    11/10/18

System configuration: lcpu=64  mode=Capped

23:57:21    %usr    %sys    %wio   %idle   physc
23:57:31      10       7       0      83   16.00
23:57:41       9       6       0      85   16.00
23:57:51       9       6       0      85   16.00
23:58:01       9       7       0      84   16.00
23:58:11      10       6       0      84   16.00

Average        9       6       0      84   16.00

2018-11-10 23:58:21 [COMMAND]: sar -u 10 5

AIX host 1 7    11/10/18

System configuration: lcpu=64  mode=Capped

23:58:21    %usr    %sys    %wio   %idle   physc
23:58:31      10       8       0      82   15.99
23:58:41       9       6       0      85   16.00
23:58:51       9       6       0      85   16.00
23:59:01       9       6       0      84   16.00
23:59:11      10       6       0      83   16.00

Average       10       6       0      84   16.00

平均時間を求める必要があります%idle

2018-11-10 23:57:21|84
2018-11-10 23:58:21|84

ベストアンサー1

入力ファイルをそのまま表示するには、awk以下の簡単なコマンドで十分です。

awk '/sar/{ time=$1" "$2; next }/Average/{ print time"|"$5 }' file

おすすめ記事