我在 bash $str 中有一个字符串。
str="ayushmishraalightayushas"
我想找出字符串中出现字母“a”的次数。
这可以使用grep -o
plus来完成wc
:
$ echo "ayushmishraalightayushas" | grep -o 'a' | wc -l
5
如第一个grep -o
所示:
$ echo "ayushmishraalightayushas" | grep -o 'a'
a
a
a
a
a
因为-o
grep 的选项确实:
-o,--仅匹配
仅打印匹配行的匹配(非空)部分,每个这样的部分在单独的输出行上。
然后只需计算wc -l
命令的行数即可。
单程:
echo ayushmishraalightayushas | grep -o a | wc -l
我相信这个 awk 单行代码最简单,无需多个管道命令即可获得此计数:
str='ayushmishraalightayushas'
awk -F a '{print NF-1}' <<< "$str"
5