顯示具有 awk 標籤的文章。 顯示所有文章
顯示具有 awk 標籤的文章。 顯示所有文章

2016/08/12

一直以來在shell中都比較習慣使用cut來切割字串
但在log裡總是會碰到一個問題
就是在月份的單日會多一個空格
此時cut就會有問題
導致程式出狀況
awk就不會有這個問題

ex:

Aug  7 03:30:11 mail snmpd[2067]: Connection from UDP

Aug 12 08:30:10 mail snmpd[2067]: Connection from UDP

用cut和awk就會出現不同的結果
如下

cat ex |cut -d ' ' -f 3
7
08:30:10

cat ex |awk '{print $3}'
03:30:11
08:30:10

因此在取空格時 建議使用awk 比較不會有因空格造成的問題

http://www.xlgps.com/article/350744.html

2016/06/10

在shell中 awk是不能直接使用shell定義的變數的
必須在awk的一開頭定義
範例如下

#!/bin/bash
a=3
b=4

awk -v a=$a -v b=$b '$1 == a {print $2}' test_data