Linux 中 awk命令输出文本的前几列

 

001、linux 中 awk命令输出文本的前几列

[root@PC1 test2]# ls
a.txt
[root@PC1 test2]# cat a.txt                     ## 测试文本
01 02 03 04 05 06 07 08 09 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
[root@PC1 test2]# awk 'NF = 1' a.txt           ## 输出第一列
01
11
21
31
[root@PC1 test2]# awk 'NF = 3' a.txt           ## 输出前三列
01 02 03
11 12 13
21 22 23
31 32 33
[root@PC1 test2]# awk 'NF = 6' a.txt          ## 输出前六列
01 02 03 04 05 06
11 12 13 14 15 16
21 22 23 24 25 26
31 32 33 34 35 36

 

002、

[root@PC1 test2]# ls
a.txt
[root@PC1 test2]# cat a.txt                         ## 测试文本
01 02 03 04 05 06 07 08 09 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
[root@PC1 test2]# awk 'NF = NF - 1' a.txt          ## 提取除最后一列外的所有
01 02 03 04 05 06 07 08 09
11 12 13 14 15 16 17 18 19
21 22 23 24 25 26 27 28 29
31 32 33 34 35 36 37 38 39
[root@PC1 test2]# awk 'NF = NF - 2' a.txt          ## 提取最后两列外的所有
01 02 03 04 05 06 07 08
11 12 13 14 15 16 17 18
21 22 23 24 25 26 27 28
31 32 33 34 35 36 37 38
[root@PC1 test2]# awk 'NF = NF - 6' a.txt          ## 提取最后6列外的所有
01 02 03 04
11 12 13 14
21 22 23 24
31 32 33 34

 。

 

posted @ 2024-02-08 22:06  小鲨鱼2018  阅读(185)  评论(0编辑  收藏  举报