【发布时间】:2018-07-31 00:37:41
【问题描述】:
我不确定我是否理解 awk 中的 NF 变量。
我的示例文件(测试)包含一行:
1 2 3 4 5
以下按预期工作:
awk '{print $1,$NF}' test
1 5
但下一个例子没有(即相反):
awk '{print $NF,$1}' test
1
我在这里缺少什么?我可以单独打印 $NF,也可以在 $1 之后打印,但不能在之前打印。
【问题讨论】:
-
它对我来说很好用,你能检查一下是否有回车字符吗?通过
cat -v file一次? -
无法重现:
echo "1 2 3 4 5" | awk '{print $NF,$1}'工作正常 -
dos2unix myFile可能会修复它。虽然您已经提供了一个很好的最小测试用例,但不要养成使用test的习惯,因为有一个同名的 shell 命令。祝你好运。
标签: awk