gpt4 book ai didi

bash - 错误的尾部语法或 grep 命令?

转载 作者:行者123 更新时间:2023-12-03 16:07:02 25 4
gpt4 key购买 nike

我得到了以下代码:

tail -fn0 /var/log/messages | \  
while read line ; do
echo "$line" | grep "test"
if [ $? = 0 ]
echo "Running information gathering"
then
etc...etc

它应该做的是持续监视“/var/tmp/messages”文件的添加行,如果其中包含“test”一词,则执行脚本的其余部分并在完成后退出。
它会尽快执行脚本的其余部分 任何 无论行的内容如何,​​都会将行添加到消息文件中。我添加了 echo 命令,并且 $line 正确包含了新的日志文件行。我尝试将测试“$? = 0”更改为“$? = 1”,但没有任何区别。
有人可以给我一个指针吗?

谢谢@TomFenech

最佳答案

我建议不要使用循环,您可以通过使用 grep 使事情变得更简单:

tail -fn0 /var/log/messages | grep -q test
echo "Running information gathering"
# rest of script
grep -q在第一场比赛后退出,因此一旦找到第一场比赛,您的脚本就会继续。

关于bash - 错误的尾部语法或 grep 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26737639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com