You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在bash中按单词末尾字符对不同长度的单词列表排序

Bash 按单词最后一个字符排序的实现方法

你可以用rev+sort的组合实现需求,该方案对任意长度的单词都适用,逻辑简单直观:

rev 单词列表文件 | sort | rev

原理说明

  • 第一步用rev命令将每一行的单词整体反转,此时原单词的最后一个字符会变成反转后字符串的首字符
  • 第二步用sort默认按首字符升序排序,相当于按原单词的最后一个字符排序
  • 第三步再用rev把所有单词反转回原始形态,就得到预期排序结果

用你给出的示例验证:
原始单词列表内容:

apple
birthday
Osaka

执行上述命令后输出:

Osaka
apple
birthday

和你的预期结果完全一致。


如果你所在的环境没有rev命令,也可以用awk+sort组合实现相同效果:

awk '{print substr($0,length($0),1) "\t" $0}' 单词列表文件 | sort | cut -f2-

内容的提问来源于stack exchange,提问作者user15629312

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 11:33:00