首页 > 解决方案 > 在bash中的文件中计算带有变量子字符串的字符串的出现次数

问题描述

我想计算Exiting with return code $var文本文件中字符串的出现次数,dump.out其中0<$var<29.

即我只想考虑在两个限制之间并包括两个限制$var之间的任何值的字符串。029

我想像这样检查它:

if [ $(grep -c "Exiting with return code 0" dump.out) -ne 5 ]; then
  rc=1
  exit 0
fi

但这里只0考虑带 s 的字符串。

任何建议都会有所帮助!

标签: stringbashgrep

解决方案


你可以试试这个:

grep -c -E 'Exiting with return code [12]?[0-9]([^0-9]|$)' dump.out

-E让 grep 使用扩展正则表达式 (ERE)
[12]?[0-9]匹配数字 0,1,...,29
([^0-9]|$)匹配行尾或除数字之外的任何内容


推荐阅读