Shell编程(六)awk工具

1. {print}

coins.txt

gold     1    1986    USA            American Eagle
gold     1    1968    Austria        Franz Josef 100 Korona
silver  10    1964    USA            ingot
gold     1    1956    Switzeland     ingot
awk '{print}' coin.txt 

1.1 {print $x}: 打印第x列

awk '{print $1}' coin.txt 

1.2 用制表键对齐

1.3 打印行号 (NR)

awk '{print NR "\t" $1 "\t" $2 "\t" $3}' coin.txt

1.4 打印列号 (NF)

 

1.5 查找功能(某行数据)

awk '$3==1986{print $0}' coin.txt 

1.6 自定义分隔符

输入分隔符:FS

awk 'BEGIN{FS=","} {print $1, $2}'

输出分隔符:OFS

1.7 打印多文件

 

1.8 某列不想显示

 

2. 计算

 

3. Regular Expression (正则表达式)

3.1 /abc/

data2.txt

abc
xxabc
xxabcxx
a bc
ab c
a b c
a.c
a c

3.2 /a.c/

3.3 /a\.c/

3.4 ^ 和 $

/^abc/: 可以匹配 abcxxxxx

/abc$/: 可以匹配 xxxxxabc

 

3.5 [ ]

 

3.6 [^abc]: 表不是abc

 

3.7 * 和 + : 匹配0-N次和至少匹配1次

 

3.8 ?: 可以有可以没有

 

3.9 {}: 控制次数

3.10 (): 看成整体

 

posted @ 2019-02-12 23:00  douzujun  阅读(207)  评论(0编辑  收藏  举报