新的bash – “意外的文件结束”

我试图设置一个简单的bash脚本来检查日志中是否出现错误消息,如果该日志中出现错误消息“重置适配器”,服务器应该给我们发电子邮件。 每当我运行下面的脚本我遇到了“Bash Script.sh:第4行:语法错误:意外的文件结束”

if fgrep 'reset adapter' /var/log/messages.log then mail -s 'Flapping ethernet' [email protected] fi 

有任何想法吗?

更新:

添加了build议; 之前“那么”,仍然得到相同的错误。 新脚本:

  if fgrep -q 'reset adapter' /var/log/messages; then mail -s 'Flapping ethernet' [email protected] fi 

 if fgrep -q 'reset adapter' /var/log/messages.log; then mail -s 'Flapping ethernet' [email protected] fi 
  • 注意添加;then之前
  • 另外,你需要保持grep安静,只返回一个错误代码。 这是用-q完成的
  • 在大多数系统上,日志文件被命名为/var/log/messages 。 检查您的系统上的messages.log是否正确。