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

bash – 如何处理作为grep命令的结果接收的每行

发布时间:2020-12-15 16:45:03 所属栏目:安全 来源:网络整理
导读:在运行 grep命令后,我有一个从文件中检索的行数,如下所示: var=`grep xyz abc.txt` 假设我有10行,由xyz组成。 现在我需要处理作为grep命令的结果的每一行。如何处理? 一个简单的方法是不将输出存储在变量中,而是使用while / read循环直接迭代它。 就像
在运行 grep命令后,我有一个从文件中检索的行数,如下所示:
var=`grep xyz abc.txt`

假设我有10行,由xyz组成。

现在我需要处理作为grep命令的结果的每一行。如何处理?

一个简单的方法是不将输出存储在变量中,而是使用while / read循环直接迭代它。

就像是:

grep xyz abc.txt | while read -r line ; do
    echo "Processing $line"
    # your code goes here
done

这个方案有变化,取决于你究竟是什么。

如果你需要在循环中改变变量(并且变化在它外面可见),你可以使用fedorqui’s answer中所说的过程替换:

while read -r line ; do
    echo "Processing $line"
    # your code goes here
done < <(grep xyz abc.txt)

(编辑:李大同)

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

    推荐文章
      热点阅读