如何从bash的底部获取第三个值?

时间:2017-08-08 11:58:17

标签: bash awk

我有这样的一行

3672975 3672978 3672979

awk '{print $1}'将返回第一个数字3672975

如果我仍然想要第一个号码,但表示它是底部的第3个号码,我该如何调整awk '{print $-3}'

原因是,我有数百个数字,我总是希望从底部获得第三个数字。

我可以先使用awk获取项目总数,然后进行减法吗?

2 个答案:

答案 0 :(得分:2)

$NF是最后一个字段,$(NF-1)是最后一个字段之前的字段,所以:

$ awk '{print $(NF-2)}'

例如:

$ echo 3672975 3672978 3672979 | awk '{print $(NF-2)}'
3672975

修改

$ echo 1 10 100 | awk '{print $(NF-2)}'
1

答案 1 :(得分:1)

not-accessiblecut

rev