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

如何编写Shell脚本对/usr/share/dict/words词典按单词末尾比较排序

按单词末尾字符排序的Shell实现方案

核心思路

通过字符串反转+常规字典排序+二次反转的组合实现,无需复杂自定义排序逻辑,兼容性强。

效果验证(匹配给出的示例)

示例输入:
orange
media
monkey
执行测试命令:

# 先将示例内容写入测试文件验证
$ cat > test.txt << EOF
orange
media
monkey
EOF
$ cat test.txt | rev | sort | rev

输出完全符合预期:

media
orange
monkey

处理系统词典文件的完整命令

直接运行以下命令即可得到按单词末尾字符排序后的词典内容:
rev /usr/share/dict/words | sort | rev
如果需要将结果保存到文件,添加重定向即可:
rev /usr/share/dict/words | sort | rev > ./sorted_words_by_tail.txt

命令拆解说明

  • rev:系统默认内置的字符串反转工具,会将输入的每一行内容首尾反转
  • sort:按默认字典序对反转后的字符串排序,此时排序逻辑等价于对原字符串从末尾往前比对
  • 二次rev:将排序后的字符串恢复为原单词形态,得到最终符合要求的排序结果

无rev环境的兼容方案

如果设备没有预装rev(极少见),可以用awk实现相同效果:
awk '{for(i=length;i!=0;i--)x=x substr($0,i,1);print x;x=""}' /usr/share/dict/words | sort | awk '{for(i=length;i!=0;i--)x=x substr($0,i,1);print x;x=""}'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:54:00