我正在尝试编写一个调用lftp的脚本,以从远程服务器获取文件,并将该文件放置在/data/tmp
目录中。然后,下载完成后,应将下载移至/data/permanent
。除非脚本被多次调用,否则它将按预期工作,因为有多个文件需要下载,在这种情况下,脚本的最新版本似乎终止了最后一个版本。 lftp传输会继续,但是不会将文件移出/ tmp目录。这是当前执行此操作的功能:
for i in title:
if '.js' in i or '.txt' in i:
string = 'lftp -e "get ' + i +' -o /data2/tmp/; bye" ftp://user:pass@host/stuff'
fileName = root + i
print fileName
if os.path.isfile(fileName):
os.system(string)
localFile = '/data2/tmp/' + os.path.basename(i)
destFile = '/data2/permanent/' + os.path.basename(i)
print localFile + " has completed transfer"
os.rename(localFile, destFile)
就像我说的那样,似乎os.system(string)
总是被调用,并且不会被破坏,但是,如果脚本再次启动,它将永远无法到达os.rename(localFile, destFile)
感谢您的帮助,谢谢!