无法使用awk命令进行操作

时间:2015-07-06 09:40:28

标签: shell awk

如果输入每次都是可变的,我们必须做什么,并且在输入的基础上我们必须再次对第一个命令的输出进行另一个操作。请参考以下示例。

假设我在终端上执行了x命令,它给出了如下输出(空格分隔):

abc efg hij klm nop qrs uvw
abc efg hij klm qrs uvw

有时会有6列,有时会有5列。

我将此输出传输到awk命令以打印第6列,即qrs,它在第一种情况下返回正确的结果,但在第二种情况下,它显示uvw

2 个答案:

答案 0 :(得分:1)

如果您想要最后一列但是您可以使用NF变量:

awk '{print $(NF-1)}' file

答案 1 :(得分:0)

看到这个awk和输出!

awk '{print NF, $NF, $6}' <<EOF
abc efg hij klm nop qrs uvw
abc efg hij klm qrs uvw
EOF

awk从1开始计数,所以一切都正确。