我有一个简单的脚本,它设置日志记录,在日志文件上运行tail -f,然后在退出tail后执行一些清理。基本上是这样的
echo 'monitoring started'
tail -f /var/log/some.log
echo 'never gets here'问题是,通过tail退出Ctrl+C也会破坏脚本的执行,因此不调用清理。是否有办法“正确”退出tail并恢复脚本调用?我找到了一些基于节省PID并通过超时来关闭PID的解决方案,但这不是我想要的,我可能需要几分钟或几个小时的监视,所以我想要手动切换。
发布于 2016-02-08 10:26:49
你可以做这样的事
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"https://stackoverflow.com/questions/35267120
复制相似问题