sort
工具可以方便地对文件中的行进行排序。然而,在bash中是否有一种优雅的方法来对以空白行分隔的段落进行排序呢?例如:
ccc
aa
aba
bbb
aba
ccc
aaa
需要成为
aaa
aba
bbb
aba
ccc
ccc
aa
一种解决方案似乎是替换所有非空行的换行符:
ccc\naa
aba\nbbb
aba\nccc
aaa
然后调用运行
sort
。aaa
aba\nbbb
aba\nccc
ccc\naa
然后恢复换行:
aaa
aba
bbb
aba
ccc
ccc
aa
sed
的解决方案,我实际上很满意。 - john1234sort
支持 --zero-terminated 参数。 - john1234