【发布时间】:2018-08-28 12:45:57
【问题描述】:
#!/bin/bash
sudo tail -fn0 /home/main/time.log |
grep -o --line-buffered 'garage\|garden\|porch' | head -1 |
while read line; do
sudo pkill -f porch.sh &
sudo pkill -f garage.sh &
done
我正在尝试编写一个脚本来监控日志,并且在匹配关键字时,它会触发一些命令。
问题是,我拼凑的东西只能工作一次,然后退出并停止监控。
如果尾部同时出现多个关键字,我希望它在第一个关键字处执行,忽略其余关键字,执行列出的脚本,然后返回监控日志尾部。我在 grep 中添加了“head -1”以在第一次匹配后停止 grep,但这也退出了 grep,因此脚本基本上停止监视。
我希望脚本在匹配关键字后保持活动状态,并继续监视日志尾部以查找可能被记录的任何新关键字。
非常感谢任何建议。谢谢!
【问题讨论】:
-
欢迎来到本站!查看tour 和how-to-ask page 了解更多关于提出问题以吸引高质量答案的信息。您可以edit your question 包含更多信息。你能给我们举一个你想触发的线路的例子吗?
标签: linux bash logging monitor