【发布时间】:2021-06-26 08:56:42
【问题描述】:
我有一个场景.. 我需要进行自定义排序
在第 4 列中......这些是可能的值。TUNPBTP
我可以对整个数据集的第一个和第二个字段使用排序
文件大小> 500MB,因此还应考虑性能。
但是对于第 4 个字段.. 我必须创建一个自定义排序,以便输出将按此顺序用于第 4 个字段。TUNPBTP
输入数据:
0022|||PB||||||||||||||||
0022|||TN|0|||||||||||||||||||||
预期输出是
0022||TN|0|||||||||||||||||||||
0022|||PB||||L|||||||||||||||||||||||
有什么建议吗?
【问题讨论】:
-
使用
awk添加另一列,1代表TUNES,2代表PLAYBACK,3代表TRICKPLAY,然后对该列进行排序,之后使用cut将其删除。 -
@Shawn:添加新列有什么帮助?我已经有 23 列数据.. 仅在第 4 个字段中,将出现该字段之一。由于我没有按所需的顺序得到它,而且按字母顺序排序没有帮助,因此必须进行自定义排序
-
请edit您的问题并显示一些示例输入、您用于排序的命令以及实际和预期的输出。
-
然后您可以对该列进行数字排序以获得您想要的顺序。
-
@Shawn:数字排序没有给我们所需的顺序