我正在尝试对以下文本行进行排序:
bbb = 4
aaaaaaaa = 1a
c = 3aa
ddddd = 2aaaa
使用“=”后面的值作为排序键。我想要得到的是:
aaaaaaaa = 1a
ddddd = 2aaaa
c = 3aa
bbb = 4
请注意,第一个和第二个字段都可以具有任意长度。
如您所见,排序应该:1)标记“=”周围的每一行2)对第二个字段(即“=”后面的数字)进行排序,3)打印整行。
我设法组合了这个 awk 命令:
cat lines | awk -F "=" '{print $2 | "sort"}'
但这只会打印第二个字段,而不是整行。
有人可以帮助我吗? 谢谢
最佳答案
怎么样:
cat lines | sort -k 3
关于sorting - 按给定字段对文本行进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7351756/