我创建了一个 Python 脚本来帮助管理我在 unRAID 服务器上的媒体。新文件会自动传输到文件夹中,脚本使用文件夹结构和文件名来确定它们应该移动到哪里,通常是移动到同一驱动器上的另一个共享中。使用午夜指挥官,这种转移会立即发生。Explorer 中的这个过程或我的脚本使用 shutil.move() 复制文件然后删除原始文件,这对于大文件可能需要很长时间,并且还会在驱动器上创建不必要的读/写。当传输在同一个共享上时,它在 Explorer 和 Python 中都是即时的。
简化伪代码 - 在此示例中,Transfer 和 TV 是同一磁盘上的共享:
from shutil import move
oldPath = r'\\NAS\Transfer\incoming\test.mkv'
newPath = r'\\NAS\TV\test.mkv'
move(oldPath, newPath)
有没有办法用 Python 移动文件的指针,就像我假设 MC 正在做的那样,而不是物理移动文件?