计算字符串中char使用的计数

时间:2015-02-26 17:53:00

标签: string bash

我试图让这个程序工作,我不能,我想要的脚本必须计算字符串中char使用的数量 例如: 字符串=好 结果= g1o2d1 有没有办法编写脚本,计算完全像我的例子的字符串计数?

 #!/bin/bash
    string=ssstttrrrriiiinnnnngg
    z=$( for((i=0;i<${#string};i++)) do; echo ${string:i:1}; done | uniq -c )
    echo $z

我的结果:

s 3 t 3 r 4 i 4 n 5 g 2

但是对于分析一些文档我想要脚本来计算char之类的 firstchar1 = $(bash脚本) ...... 我需要使用另一个脚本的值 请建议我 问候

1 个答案:

答案 0 :(得分:1)

$ echo "abaaacdefg" | grep -o .
a
b
a
a
a
c
d
e
f
g

$ echo "abaaacdefg" | grep -o .| sort
a
a
a
a
b
c
d
e
f
g

$  echo "abaaacdefg" | grep -o .| sort |  uniq -c 
      4 a
      1 b
      1 c
      1 d
      1 e
      1 f
      1 g


$ echo "abaaacdefg" | grep -o .| sort |  uniq -c | awk '{printf $2$1}'
a4b1c1d1e1f1g1

请参阅 Bash: Split string into character arraycounting duplicates in a sorted sequence using command line tools