awk
awk是一个数据处理工具,主要是针对处理每一行的字段内的数据(每次读取一行),而默认的字段的分隔符为空格键或【Tab】键。
$0表示一行数据。
NF:每一行($0)拥有的字段总数。
NR:目前awk所处理的是“第几行”的数据。
FS:目前的分隔字符,默认是空格键。
举栗子:
cat /etc/passwd | awk 'BEGIN {FS=":"} $3 < 10 {print $1 "\t" $3}'
cat pay.txt | awk 'NR==1 {print "%10s %10s %10s %10s\n", $1, $2, $3, "Total"} NR >= 2 {total = $2+$3print "%10s %10d %10d %10.2f\n", $1, $2, $3,total}'