gpt4 book ai didi

python - 传输完成后将文件移动到另一个目录

转载 作者:太空狗 更新时间:2023-10-30 00:11:48 26 4
gpt4 key购买 nike

我有一个视频编码脚本,我想在文件移动到特定目录后立即运行。

如果我使用 inotify 之类的东西,我如何确保文件在完成移动之前不被编码?

我考虑过做这样的事情:

  • 将 (rsync) 文件复制到一个临时目录中。
  • 完成后,将(简单的“mv”)移动到编码目录中。
  • 让我的脚本监控编码目录。

但是,如何让第 2 步正常工作并且只在第 1 步完成后运行?

我正在使用 Ubuntu Server 11.10,我想使用 bash,但如果可以简化问题,我可能会被说服使用 Python。

我本身并不是在“下载”文件到这个目录;相反,我会在绝大多数时间使用 rsync。

此外,此 Ubuntu 服务器在虚拟机上运行。

我通过 NFS 从 FreeBSD 服务器挂载了我的主要文件存储。

最佳答案

最简单的方法是使用 wgetcurl 这样的程序进行下载,该程序在文件下载完成之前不会退出。如果做不到这一点,我不确定它是否绝对是最佳解决方案,但您可以使用循环脚本,使用 lsofgrep 检查文件是否打开:

while lsof | grep /path/to/download >/dev/null; do sleep 5; done
mv /path/to/download /path/to/encode/dir

关于python - 传输完成后将文件移动到另一个目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10163877/

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