需要监视日志文件中的特定字符串“服务器在http上运行”。在日志文件中找到该字符串后,我需要停止检查并希望继续其余代码。
当前我当前正在使用“ tail -f my-file.log | grep -q“服务器在http上运行”。但这似乎不起作用。tail命令仍在运行。
tail -f my-file.log | grep -q "Server running at http"
答案 0 :(得分:1)
您可以尝试:
tail -f my-file.log | awk '/Server running at http/ { print | bash file_with_code}'
P.S。不用说不同的文件,它可以是同一脚本中的函数,不用说,在这种情况下,您无需在函数前说bash
另一个可能的解决方案是:
tail -f my-file.log | egrep -m 1 "Server running at http";echo "found the pattern"
答案 1 :(得分:0)
您必须指定需要多少个匹配项。需要先按
tail -f server.log | grep -m 1 "mystring"
一旦找到第一个匹配项“ mystring”,程序将自动退出。