如何在Linux下通过Bash命令将文本数据按字段从后往前倒序排列
Linux控制台字段倒序排列操作方案
适用场景
按空格分割文本行的字段,将每行字段从最后一个到第一个倒序输出。
推荐方法:awk单行命令
直接执行如下命令即可:
awk '{for(i=NF;i>=1;i--) printf "%s ",$i;print ""}' 你的文件路径
命令解释:
NF为awk内置变量,自动统计当前行的字段总数- 循环从最后一个字段遍历到第一个字段,依次输出
- 末尾的
print ""负责每行输出完成后换行,避免格式混乱
你给出的示例输入执行后,会直接输出目标结果:
k k3:c k2:b 1:a
如果你的字段不是用空格分隔,比如用冒号分隔,只需要加-F参数指定分隔符即可,示例:
awk -F':' '{for(i=NF;i>=1;i--) printf "%s:",$i;print ""}' 你的文件路径
内容的提问来源于stack exchange,提问作者szytynamiare
相关产品推荐
相关产品推荐

