我正在编写一个shell脚本遍历目录列表并计算其中文件的单词。每次读取文件时,代码都会打印数据。所以输出没有排序。我该如何排序?
现在的输出是这样的:
cat 5
door 1
bird 3
dog 1
我希望先按第二列排序,然后按第一列排序:
dog 1
door 1
bird 3
cat 5
答案 0 :(得分:1)
您可以将shell脚本传递给:
sort -n -k2 -k1
使用-n
指定数字排序,并使用-k2
首先按第二个字段排序,然后使用-k1
按第一个字段排序。
答案 1 :(得分:0)
首先,我尝试重现OP正在做什么,所以在创建文件后,我尝试了这个命令:
% for i in *; do echo -n "$i "; wc -w < $i; done
bird 3
cat 5
dog 1
door 1
然后我添加了那种:
% (for i in *; do echo -n "$i "; wc -w < $i; done) | sort -n -k 2 -k 1
dog 1
door 1
bird 3
cat 5