工作中使用到的linux命令

1.查找日誌文件,第12個域值等於500,並打印整行

  • $0表示所有域,$12表示第12個域
awk '{if($12==500) print $0}' gate_2019-10-20.log
  • 默認的域分隔符是“空格”和“製表符”,-F可以指定分割符
awk -F ':' '{if($5==789) print $0}' test.txt

2.查找文件指定內容前後幾行

  • 查找info文件,內容爲“form-data”的前後30行(會輸出每個匹配項)
grep -C 30 "form-data" info_2019-11-09.log
  • 查找info文件,內容爲“form-data”的前30行
grep -B 30 "form-data" info_2019-11-09.log
  • 查找info文件,內容爲“form-data”的後30行
grep -A 1 "form-data" info_2019-11-09.log
  • 從頭開始匹配兩個,並輸出後一行
grep -m 2 -A 1 "form-data" info_2019-11-09.log
Content-Disposition: form-data; name="orgCode"
Content-Type: text/plain;charset=UTF-8
--
Content-Disposition: form-data; name="dataType"
Content-Type: text/plain;charset=UTF-8

3.多條件查找

  • 查找info文件,按照“waybill”和“773036068800450”查找
    (使用管道符,在前面查找的基礎上再次查找)
grep "waybill" info_2019-11-09.log | grep "773036068800450"
  • 查找info文件,按照“waybill”或者“773036068800450”查找
grep "waybill"  \| "773036068800450" info_2019-11-09.log
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章