我知道grep -c 'string' dir返回一个文件名列表,以及该字符串在每个文件中出现的次数。
是否有任何方法可以简单地使用grep (或可能操作此输出)获取显示在整个文件目录中的字符串的总数?谢谢。
BASH_DIR=$(awk -F "=" '/Bash Dir/ {print $2}' bash_input.txt)
FIND_COUNT=0
for f in "$BASH_DIR"/*.sh
do
f=$(basename $f)
#Read through job files
echo -e "$f: $(cat * | grep -c './$f')"
done发布于 2014-06-30 18:09:25
如果只想查看以.sh结尾的文件,请使用
grep -c pattern *.sh或者,如果要将其存储在变量中,请使用
n=$(grep -c xyz *.sh)发布于 2014-06-30 18:52:38
您可以将find与-exec cat和grep -c string结合使用
find /etc/ -maxdepth 1 -type f -exec cat {} + | grep -c conf
139因此,在我的/etc上出现了139个字符串'conf‘。
请注意,我不想递归运行,否则我将删除-maxdepth 1
https://stackoverflow.com/questions/24496260
复制相似问题