以下是移动和替换单个文件的代码
import shutil
import os
src = 'scrFolder'
dst = './dstFolder/'
filelist = []
files = os.listdir( src )
for filename in files:
filelist.append(filename)
fullpath = src + '/' + filename
shutil.move(fullpath, dst)
如果我执行相同的命令并移动dst folder
中已存在的文件shutil.Error: Destination path './dstFolder/file.txt' already exists
如果已经存在相同的文件名则移动和替换
答案 0 :(得分:55)
如果您指定目的地的完整路径(而不仅仅是目录),那么shutil.move
将覆盖任何现有文件:
shutil.move(os.path.join(src, filename), os.path.join(dst, filename))
答案 1 :(得分:1)
我通过在move命令中提供源和目标的完整路径来覆盖它... 请记住为Windows路径添加双斜杠。
# this is to change directories (type your own)
os.chdir("C:\REPORTS\DAILY_REPORTS")
# current dir (to verify)
cwd = os.getcwd()
src = cwd
dst = cwd + '\\XLS_BACKUP\\'
shutil.move(os.path.join(src, file), os.path.join(dst, file))
# nice and short.