1

我在 bash $str 中有一个字符串。

str="ayushmishraalightayushas"

我想找出字符串中出现字母“a”的次数。

4

3 回答 3

2

这可以使用grep -oplus来完成wc

$ echo "ayushmishraalightayushas" | grep -o 'a' | wc -l
5

如第一个grep -o所示:

$ echo "ayushmishraalightayushas" | grep -o 'a'
a
a
a
a
a

因为-ogrep 的选项确实:

-o,--仅匹配

仅打印匹配行的匹配(非空)部分,每个这样的部分在单独的输出行上。

然后只需计算wc -l命令的行数即可。

于 2013-11-04T13:44:42.390 回答
1

单程:

echo ayushmishraalightayushas | grep -o a | wc -l
于 2013-11-04T13:44:48.343 回答
1

我相信这个 awk 单行代码最简单,无需多个管道命令即可获得此计数:

str='ayushmishraalightayushas'
awk -F a '{print NF-1}' <<< "$str"
5
于 2013-11-04T14:20:43.610 回答