Linux下如何使用wc命令和管道按字数排序文件?
按文件字数排序的正确命令
你之前的命令sort | wc -w逻辑顺序错误,它是先对单个文件的内容进行排序,再统计该文件的总字数,无法实现按每个文件的字数排序的需求。
正确的命令需要先统计每个文件的字数,再对统计结果排序:
wc -w * | sort -n
命令解析:
wc -w *:-w参数用于统计文件的单词数,*匹配当前目录下所有非隐藏文件;如果要包含隐藏文件,可先执行shopt -s dotglob,再用wc -w *|:将wc的输出传递给后续的sort命令sort -n:-n表示按数值大小排序,确保字数按从小到大排列;若需要从大到小排序,添加-r参数即可:sort -nr
如果不需要最后一行的总计行,可过滤掉:
wc -w * | grep -v total | sort -n
内容的提问来源于stack exchange,提问作者hhhamster
相关产品推荐
相关产品推荐

