计算linux中数字的出现次数

时间:2015-05-06 01:45:36

标签: linux count

我有一个包含25,000行的.txt文件。每行有一个从1到20的数字。我想计算文件中每个数字的总出现次数。我不知道我应该使用grep或awk以及如何使用它。而且我担心我和1和11混淆了,它们都包含1和1。非常感谢您的帮助!

我正在尝试,但这会重复我的数字。

grep -o '1' degreeDistirbution.txt | wc -l

2 个答案:

答案 0 :(得分:1)

使用grep,您可以分别使用'^'和'$'匹配行的开头和结尾。对于整个事情,我将使用数组,但为了说明这一点,我将只使用一个变量:

one="$(grep -c "^1$" ./$inputfile)"

然后我们将它与bash循环的魔力结合在一起并循环遍历所有数字,如下所示:

i=1
while [[ $i -le 20 ]]
do
  arr[i]="$(grep -c "^$i$" ./$inputfile)"
  i=$[$i+1]
done

如果你愿意,你当然也可以使用for

答案 1 :(得分:1)

更简单的方法是:

Point oldRel = pictureBox4.Location; //258, 109
Point oldAbs = PointToClient(oldRel); //75, -96
//Commenting out this line fixes the image shift but ruins the transparency
pictureBox4.Parent = pictureBox2;  
Point newRel = pictureBox4.Location; //258, 109
Point newAbs = PointToClient(pictureBox4.Location); //75, -96

将计算排序文件中每个数字的出现次数,并显示如下结果:

sort -n file | uniq -c

在示例文件中显示我有3个,3个等等。