使用egrep匹配和文件名创建文件

时间:2018-09-19 16:12:49

标签: linux shell

我需要一些帮助...

我正在使用shellscripts创建一个单元测试脚本。该脚本存储了目录中所有文件的所有直线调用。

该脚本已达到目的,但是如果grep不返回结果,我不想添加文件名。

那是我的代码:

Region

我该怎么做?

谢谢

1 个答案:

答案 0 :(得分:1)

grep如果找不到匹配的行,则返回虚假的退出状态(1),因此您可以放入if语句以测试其是否匹配任何内容。在此处用!进行了反转:

for file in ./*; do
    if ! egrep -on '...' "$file" >> somefile; then
        echo 'grep did not match anything'
    fi
done

(我认为这里不需要ls而不只是一个shell glob。)