iT邦幫忙

0

shell script&Command(redhat、centos)[已解決]

有個問題想請教各位前輩,今天cat 一份log取得以下訊息
cat /tmp/test.log | grep 'abc-def-1010-ghi-' | awk -F' ' '{print $1,$2,$3}' >/tmp/test.txt
2019-07-01 10:10:10.123 [abc-def-1010-ghi-1]
2019-07-01 10:10:20.123 [abc-def-1010-ghi-3]
2019-07-01 11:10:10.123 [abc-def-1010-ghi-2]
2019-07-01 11:10:20.456 [abc-def-1010-ghi-4]
2019-07-01 12:10:10.123 [abc-def-1010-ghi-3]
2019-07-01 12:10:20.456 [abc-def-1010-ghi-5]
再透過
cat test.txt |awk -F "abc-def-1010-ghi-" '{print $1 $2 $3}' >/tmp/test1.txt
2019-07-01 10:10:10.123 [1]
2019-07-01 10:10:20.123 [3]
2019-07-01 11:10:10.123 [2]
2019-07-01 11:10:20.456 [4]
2019-07-01 12:10:10.123 [3]
2019-07-01 12:10:20.456 [5]

使用sort取出的結果並非想要的資訊
cat test1.txt | sort -nrk2 | awk -F: '!A[$1]++' | sort -nk1
2019-07-01 10:10:20.123 [1]
2019-07-01 11:10:20.456 [1]
2019-07-01 12:10:20.456 [1]

如果想得到虛線下的效果該如何處理呢?

日期       時間            值          

2019-07-01 10:10:20.123 [3]
2019-07-01 11:10:20.456 [4]
2019-07-01 12:10:20.456 [5]
取得每小時最大值[x]

尚未有邦友回答

立即登入回答