常用的分割
testphone 檔案中儲存了
18768193916,18768187118,13777495441,17764562286,15068118584,13186967520,13750893161,18758322331,18767180646,13588023315
cat testphone|awk -f ',' ''
可以列印出對應的手機號,和字段
-f指定分隔符
$1 指指定分隔符後,第乙個字段,$3第三個字段, \t是製表符
乙個或多個連續的空格或製表符看做乙個定界符,即多個空格看做乙個空格
awk -f":" '' /etc/passwd
awk -f":" '' /etc/passwd //$1與$3相連輸出,不分隔
awk -f":" '' /etc/passwd //多了乙個逗號,$1與$3使用空格分隔
awk -f":" '' /etc/passwd //$1與$3之間手動新增空格分隔
awk -f":" '' /etc/passwd //自定義輸出
awk -f: '' /etc/passwd //顯示每行有多少字段
awk -f: '' /etc/passwd //將每行第nf個字段的值列印出來
awk -f: 'nf==4 ' /etc/passwd //顯示只有4個字段的行
awk -f: 'nf>2' /etc/passwd //顯示每行字段數量大於2的行
awk '' /etc/passwd //輸出每行的行號
awk -f: '' /etc/passwd //依次列印行號,字段數,最後字段值,製表符,每行內容
awk -f: 'nr==5' /etc/passwd //顯示第5行
awk -f: 'nr==5 || nr==6' /etc/passwd //顯示第5行和第6行
route -n|awk 'nr!=1' //不顯示第一行
//匹配**塊
//純字元匹配 !//純字元不匹配~//字段值匹配 !~//字段值不匹配 ~/a1|a2/字段值匹配a1或a2
awk '/mysql/' /etc/passwd
awk '/mysql/' /etc/passwd
awk '/mysql/' /etc/passwd //三條指令結果一樣
awk '!/mysql/' /etc/passwd //輸出不匹配mysql的行
awk '/mysql|mail/' /etc/passwd
awk '!/mysql|mail/' /etc/passwd
awk -f: '/mail/,/mysql/' /etc/passwd //區間匹配
awk '/[2][7][7]*/' /etc/passwd //匹配包含27為數字開頭的行,如27,277,2777...
awk -f: '$1~/mail/' /etc/passwd //$1匹配指定內容才顯示
awk -f: '' /etc/passwd //與上面相同
awk -f: '$1!~/mail/' /etc/passwd //不匹配
awk -f: '$1!~/mail|mysql/' /etc/passwd
AWK的基本使用
由於一直在做it實施工作,所以工作中接觸到unix後台的東西多些.從剛開始只會使用cd pwd等簡單的命令,到後來順手就能寫個幾十行的shell指令碼,在這個過程中經歷了很多,也學習到了很多.awk是我個人認為使用最多,最高效的命令.本篇就先回憶下awk的基礎.awk雖然功能強大,但是其語法卻一點也...
awk程式設計基本使用示例
對於每一行,如果第三列大於0,則列印第一列,第二列 第三列的值 awk 3 0 file1 file2 f指定執行程式的檔案 awk f programfile inputfile 列印整行輸入 awk 或者 awk nr當前行數,nf當前行的列數,下面這個 是列印當前行的列數,第一列和最後一列 a...
awk命令基本使用(1)
1 通過man awk可知它的詳情 awk 是一種程式語言,awk有很多內建的功能,比如陣列 函式等.例項1通過awk得到ip root localhost ifconfig em1 link encap ethernet hwaddr 14 18 77 70 62 20 inet addr 10....