如何使iNotifyWait在内存转储完成后停止



因此,在寻找一种方法来找出何时创建文件以启动副本的方法时,我找到了InotifyWait,但似乎对我不起作用。<<<<<<<<<<<</p>

我正在使用Redline倾倒远程计算机的内存,并具有脚本,以便它可以找到正确的目录和文件,但是当我尝试设置InotifyWait时,它只是挂起,永远不会返回该文件已完成(我想知道该文件是否通过redline打开,直到完成整个扫描,即使完成了实际的内存图像?)

我尝试了

inotifywait -m -e create fileName

inotifywait -m -e close_write fileName

,但似乎都没有起作用。他们说创建了手表,但是在文件不再写信后很长时间就挂在那里。而且我不知道如何检查远程计算机是否仍然在文件上打开句柄... CP肯定仍然有效,而Tail -F清楚地显示了该文件未写入。是否有一个优雅的解决方案来通知我的文件脚本已准备好复制?

您要求它永远不会退出:

   -m, --monitor
          Instead of exiting after receiving a single event, execute
          indefinitely.  The default behaviour is to exit after the
          first event occurs.

它等待无限地,尝试inotifywait -e close_write fileName

另一种方法是用--timeout / -t实现繁忙的循环,但这是连续数据输入:

while inotifywait -e modify -t 15 fileName; do
    echo "something was written in the last 15 seconds"
done
echo "no activity for 15 seconds. done?"

相关内容

  • 没有找到相关文章

最新更新