linux - Grep 没有给出正确的返回码

标签 linux unix

在文件中搜索多个模式并使用 grep 命令查找返回代码时,无论模式是否存在,我都得到相同的结果请帮助我,下面是我的代码

grep -v "ORA-|Linux-x86_64 Error|stopped|Failed" /home/expdp.log>/dev/null

回声$?

无论文件是否具有模式,输出始终为 0

最佳答案

用$?你从程序中得到返回值,无论它是否运行良好。它与模式匹配无关。您应该解析返回的 stout 输出,而不是将其重定向到/dev/null/

您可以使用 -c 选项来计算匹配项并评估返回的计数值。

关于linux - Grep 没有给出正确的返回码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46345644/

相关文章:

linux - 用于查找文本文件的 Unix 脚本不起作用

macos - 如何每秒运行一次代码?

linux - 使用 bash one liner 创建别名

unix - 结合 awk 和 csum 对字段进行哈希处理

linux - 编译 Linux 内核并检查日志是否相同

linux - 如何从直线查询结果中的列名中删除表名

PHP Cron 作业返回 "-: error while loading shared libraries: libc.so.6: ELF load command past end of file"

Java——在UNIX环境下执行命令

linux - 标记音频和 ogg

linux - Linux 中带有解析参数的 Bash 脚本