加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 计算grep结果

发布时间:2020-12-15 21:20:14 所属栏目:安全 来源:网络整理
导读:我是bash的新手,所以我很难做一些非常基本的事情. ?通过播放各种脚本,我发现以下脚本打印包含“单词”的行 for file in*; do cat $file | grep "word"done 执行以下操作: for file in*; do cat $file | grep "word" | wc -ldone 在每次迭代中都有打印结果“
我是bash的新手,所以我很难做一些非常基本的事情.
?通过播放各种脚本,我发现以下脚本打印包含“单词”的行

for file in*; do
    cat $file | grep "word"
done

执行以下操作:

for file in*; do
    cat $file | grep "word" | wc -l
done

在每次迭代中都有打印结果“文字”出现在文件上多少次.

>我如何实现所有这些外观和计数器的计数器
结束只是回应柜台?

我用了一个计数器,但它出现了0.

let x+=cat $filename | grep "word"

解决方法

您可以将整个循环传递给wc -l.

for file in *; do
    cat $file | grep "word"
done | wc -l

这是一个useless use of cat.怎么样:

for file in *; do
    grep "word" "$file"
done | wc -l

实际上,如果您立即将所有文件名传递给grep,则不需要整个循环.

grep "word" * | wc -l

请注意,如果word在同一行显示多次,则这些解决方案只计算整行一次.如果要分别计算同一行出现次数,可以使用-o在单独的行上打印每个匹配项:

grep -o "word" * | wc -l

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读