grep +一段时间后添加超时如果找不到相关的匹配

yae*_*ael 0 linux

我使用以下命令语法在我的脚本中搜索params

grep -qsRw -m1"any_param"/dir/..../

有时候搜索需要花费很长时间.问题是如何为grep命令添加时间

例如,20秒后,grep将会爆发

如果为grep添加时间不违法,那么在其他方面怎么可能呢?

THX Yael

Dav*_*d Z 5

有一个Linux命令timeout可以为您执行此操作.赶紧跑

timeout 20s grep -qsRw -m1 "any param" /dir/.../
Run Code Online (Sandbox Code Playgroud)

编辑:如果您没有访问权限timeout,可以试试这个:

grep -qsRw -m1 "any param" /dir/.../ & sleep 20; kill %1
Run Code Online (Sandbox Code Playgroud)

之后,grep命令的进程ID 将作为Bash变量提供$!.(我假设你正在运行Bash ......如果没有,它有助于在问题中指定你的shell)