处理后移动文件

时间:2017-02-23 17:10:01

标签: python shutil

您好试图移动已完成处理的日志,但我认为我使用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。

由于

1 个答案:

答案 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)
       #           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^