脚本 bash 尾部总是一个日志文件,当匹配特定单词时,发送邮件
Script bash that tail always a logfile and when match particular word, send mail
我搜索了所有线程,但我不知道如何解决我这个非常简单的问题..
我觉得很简单,但我不是bash专家..
我需要一个 bash 脚本,它在日志文件中执行连续尾巴,当 grep 单词 "fail" 时,执行另一个命令并向我发送邮件(但尾巴命令不能停止)
我想我需要 "for loop" 或 "while read" 或 "if then else" 命令。我尝试了不同的方法,但找不到有效的脚本..
非常感谢您的帮助!
最有可能的是,使用标准 Linux 实用程序比使用 bash:
实现此功能更简单、更好
tail -f log-file | stdbuf -oL grep fail | xargs -L1 send-mail-alert
您已经知道您需要tail/grep。您需要两个额外的成分:stdbuf 和 xargs
stdbuf 将强制 'line buffering',导致 'fail' 消息无(缓冲)延迟地发送到 'xargs' 程序。
'xargs' 命令将在每次出现 'fail' 时激活脚本 'send-mail-alert'。您可以内联邮件传递,并使用脚本
我搜索了所有线程,但我不知道如何解决我这个非常简单的问题..
我觉得很简单,但我不是bash专家..
我需要一个 bash 脚本,它在日志文件中执行连续尾巴,当 grep 单词 "fail" 时,执行另一个命令并向我发送邮件(但尾巴命令不能停止)
我想我需要 "for loop" 或 "while read" 或 "if then else" 命令。我尝试了不同的方法,但找不到有效的脚本..
非常感谢您的帮助!
最有可能的是,使用标准 Linux 实用程序比使用 bash:
实现此功能更简单、更好tail -f log-file | stdbuf -oL grep fail | xargs -L1 send-mail-alert
您已经知道您需要tail/grep。您需要两个额外的成分:stdbuf 和 xargs
stdbuf 将强制 'line buffering',导致 'fail' 消息无(缓冲)延迟地发送到 'xargs' 程序。
'xargs' 命令将在每次出现 'fail' 时激活脚本 'send-mail-alert'。您可以内联邮件传递,并使用脚本