linux awk 常见字符串处理

awk指定输出列:

awk '{print $0} file'    #打印所有列
awk '{print $1}' file #打印第一列 awk '{print $1, $3}' file #打印第一和第三列 cat file | awk '{print $3, $1}' #打印第三列和第一列,注意先后顺序。 cat file | awk '{print $3, $NF}' #打印第三列和最后一列 awk -F ":" '{print $1, $3}' #以“:”为分隔符分割列,然后打印第一列和第三列

$0表示所有列 

-F:指定分隔符

$(NF)表示最后一列,$(NF-1)表示倒数第二列,以此类推。

特殊案例:如果我想打印N列之后的所有列,该怎么办?

解决方法是,把前N列都赋值为空,然后打印所有列。

awk '{for(i=1;i<=N;i++){$i=""}; print $0}' file
原文地址:https://www.cnblogs.com/zndxall/p/10208808.html