Bash Shell计数字符串或者单词中的字符数

时间:2020-01-09 10:45:52  来源:igfitidea点击:

如何在Bash UNIX/Linux shell下的字符串或者变量中计数和打印特定字符(例如D或者数字7)?
您可以使用sed,grep,wc或者bash shell本身等UNIX/Linux命令来计算字符串或者单词或者shell变量中的字符数。

grep命令计算字符数

使用以下语法在名为$x的变量中计算s字符:

x="This is a test"
grep -o "s" <<<"$x" | wc -l

输出示例:

3

要同时匹配s和S,请执行:

x="This is a test. S"
grep -o "[s|S]" <<<"$x" | wc -l

输出示例:

4

仅使用重击计数字符数

您可以使用Bash参数扩展,如下所示:

x="This is a test"
y="${x//[^s]}"
echo "$y"
echo "${#y}"

要同时匹配s和S,请执行:

x="This is a test. S"
y="${x//[^s|S]}"
echo "${#y}"