我有一个 github 项目可供其他人使用。其中一个脚本 update.py
每天(通过 cron)检查 github 以查看是否有更新的版本可用。
在本地,该脚本位于目录 /home/user/.Project/update.py
如果 github 上的版本较新,则 update.py
将 /home/user/.Project/
移动到 /home/user/.OldProject/
,克隆 github 存储库并将下载的存储库移动/重命名为 /home/user/.Project/
它对我来说已经完美运行了大约五次,但我刚刚意识到脚本仍在运行时正在自行移动。这种方法是否有任何不可预见的后果,是否有更好的方法?
最佳答案
只要脚本使用的所有代码都已编译并加载到 Python VM 中,源移动就不会有问题,因为它将保留在内存中,直到进程结束或被替换(或换出) ,但由于它被认为是脏数据,因此将被完全相同地交换)。但是,如果在此过程中任何文件保持打开状态,操作系统可能会尝试阻止移动操作。
关于python - 如果 python 脚本移动/重命名其父目录,是否会产生负面后果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43177320/