【发布时间】:2016-07-25 08:29:51
【问题描述】:
我是 shell 脚本的新手。我正在尝试编写脚本。
我有一个日志文件,它每分钟保存一次数据。脚本需要检测该日志文件中的关键字(如果关键字存在)。
我尝试如下:
read jeeva/sample/logs.txt
grep keyword
我知道我的剧本很白痴。请帮我解决这个问题。
【问题讨论】:
-
通常,
grep keyword filename是在文件中搜索的公认模式。然后因为您每分钟都在这样做,您可以尝试tail -f file | grep keyword,但这是一个脆弱的解决方案,仅适用于命令行使用。寻找旨在解决此问题的实用程序,也许是watcher(有很多,要涵盖现实生活中出现的所有极端情况并非易事)。在此处搜索[bash] watch以获取一些想法。祝你好运。 -
@shellter - 我不太确定
tail -f(或至少tail -F)是否如此脆弱。我不久前提供了a solution,得到了一些很好的回应,这是基于我多年来一直在运行而没有出现问题的东西。 -
@ghoti 。是的,我应该说“可能很脆弱”。我一定会检查你的答案! Tnx!
标签: linux bash shell grep readfile