Linux使用排序命令使用最后部分对列表进行排序

Linux使用排序命令使用最后部分对列表进行排序

sort如何使用或任何相关命令对如下列表进行排序?

12.ale.panal.sel.blr.teta.hf.ew.rr.lwq.ors.2018
34.ev.we.ars.lmn.2017
5.lam.bere.meto.belagn.hede.we.e.2020
54.arad.met.kal.sil.tek.br.yz.2005

我想根据年份的最后一个词对它们进行排序?

注意基本上类似sort -t. -k-1虽然-1是不允许的。有什么命令只是为了解决最后一部分吗?

答案1

与一个施瓦茨变换

... | awk -F. -v OFS=. '{print $NF, $0}' | sort -t. -n -k1,1 | cut -d. -f2-

其中...是您用来生成列表的命令。

相关内容