Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用awk打印最后一个字段,然后使用$NF打印第一个字段_Awk - Fatal编程技术网

使用awk打印最后一个字段,然后使用$NF打印第一个字段

使用awk打印最后一个字段,然后使用$NF打印第一个字段,awk,Awk,我不确定我是否理解awk中的NF变量 我的示例文件(测试)包含一行: 1 2 3 4 5 以下工作如预期: awk '{print $1,$NF}' test 1 5 但下一个示例并非如此(即相反): 我错过了什么?我可以自己打印$NF,也可以在$1之后打印,但不能在$1之前打印。因为它对我来说很好,我怀疑它可能是导致此问题的回车字符,如果是这种情况,请尝试以下操作: tr -d '\r' < Input_file > temp_file && mv temp

我不确定我是否理解awk中的NF变量

我的示例文件(测试)包含一行:

1 2 3 4 5
以下工作如预期:

awk '{print $1,$NF}' test
1 5
但下一个示例并非如此(即相反):


我错过了什么?我可以自己打印$NF,也可以在$1之后打印,但不能在$1之前打印。

因为它对我来说很好,我怀疑它可能是导致此问题的回车字符,如果是这种情况,请尝试以下操作:

tr -d '\r' < Input_file > temp_file  &&  mv temp_file  Input_file
1-通过执行以下操作检查任何输入_文件中是否存在回车字符:

cat -v Input_file
2-如果您在输入_文件中发现任何回车字符,则可以通过执行以下操作将其删除:

tr -d '\r' < Input_file > temp_file  &&  mv temp_file  Input_file
tr-d'\r'temp\u file&&mv temp\u file Input\u file

它对我来说很好用,你能检查一下上面是否有回车符吗?通过执行
cat-v文件
一次?无法复制:
echo“123445”| awk'{print$NF,$1}'
工作正常
dos2unix myFile
可能会修复它。虽然您已经介绍了一个很好的最小测试用例,但不要养成使用
test
的习惯,因为有一个同名的shell命令。祝你好运