您好试图移动已完成处理的日志,但我认为我使用shutil错误。
import shutil
path = '/logs/'
finDir = '/complete/'
# parse loop
def getUniquePath(path):
for filename in os.listdir(path):
if..processing log
shutil.move(filename, finDir) #moves completed files
我不断收到文件不存在的错误。
所以我在循环之后添加了一个print语句,它正确地打印出文件名和目的地,所以我认为我只是错误地使用了shutil.move。
由于
答案 0 :(得分:1)
除非您在path
目录中,否则需要将filename
与/logs/
合并。
否则,文件搜索在当前目录中完成;导致文件未找到或文件操作错误(如果当前目录中存在同名文件)
使用os.path.join
:
import os
import shutil
path = '/logs/'
finDir = '/complete/'
# parse loop
def getUniquePath(path):
for filename in os.listdir(path):
..
shutil.move(os.path.join(path, filename), finDir)
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^