gpt4 book ai didi

linux - 如何退出 tail -f 并恢复脚本

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:49:46 24 4
gpt4 key购买 nike

我有一个简单的脚本,它设置日志记录,在日志文件上运行 tail -f,然后在退出 tail 后执行一些清理。基本上是这样的

echo 'monitoring started'
tail -f /var/log/some.log
echo 'never gets here'

问题是,通过 Ctrl+C 退出 tail 也会中断脚本执行,因此不会调用清理。有没有办法“正确”退出 tail 并恢复脚本调用?我找到了一些基于保存 PID 并通过超时将其杀死的解决方案,但这不是我想要的,我可能需要监控几分钟或几小时,所以我想要一个手动切换。

最佳答案

你可以这样做

echo "monitoring started"
tail -f /var/log/some.log & #execute tail in background
read -sn 1 #wait for user input
kill %1 #kill the first background progress, i.e. tail
echo "Is reached"

关于linux - 如何退出 tail -f 并恢复脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35267120/

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