awk 命令最常见用法

awk 最基本最常见的用法是——过滤出一行文本中的指定位置的字段。

这个文本,可以从管道输入,也可以从文件中输入。

举例说明:

1 过滤出第二个字段

# 输入源为管道
echo 'a b c d'|awk '{print $2}'
# 输出:b

# 输入源为文本
echo 'a b c d' > test.txt
awk '{print $2}' test.txt

2 指定字段分隔符

默认分隔符是空格或tab,有时需要指定为其他符号(如逗号)。

echo 'a,b,c,d'|awk -F, '{print $2}'
# 输出:b

echo 'a, b, c, d'|awk -F, '{print $2}'
# 输出: b

echo 'a, b, c, d'|awk -F',' '{print $2}'
# 输出: b

echo 'a, b, c, d'|awk -F', ' '{print $2}'
# 输出:b

3 格式化输出

echo 'a b c d'|awk '{printf "%-8s %-10s\n",$1,$4}'
# 输出:a        d

4 输出最后一个字段

(NF 是一个內建变量,表示字段的数目)

echo 'a b c d'|awk '{print $NF}'
# 输出:d

echo 'a b c d'|awk '{print NF}'
# 输出:4

 

以上就是目前用得较多的情况。简单而实用。

更多参考:https://www.runoob.com/linux/linux-comm-awk.html

站长数十年成长感悟,输入暗号查看

桩白墨公众号上还能加入书舟书友群、美团外卖红包群,免费领取站桩和原创 chatgpt 教程哦
暗号:
请关注本站微信公众号,回复“暗号”,即可获取。在微信里搜索“桩白墨”或者“baimoz”或者微信扫描右侧二维码都可以关注站长微信公众号。