2016-09-05 122 views
2

我想用日期时间戳复制文件。下面的代码不适用于Windows。我是python的新手,所以请帮助我。python复制带时间戳的文件

import shutil 
import datetime 
shutil.copyfile('C:\\Users\\Documents\\error.log','C:\\Users\\Documents\datetime.now().strftime("%Y%m%d-%H%M%S").log') 
+1

你的意思是保留源文件的时间戳的声明? – dawg

+0

''C:\\ Users \\ Documents \\ {}。log'.format(datetime.now()。strftime(“%Y%m%d-%H%M%S”))' – MaxU

+0

我想代码应该复制“error.log”到“error-datetime.log” – Ajsh

回答

1

在您的代码中,您将代码包含在字符串中。您需要从字符串中运行代码,并将其与字符串结合使用。一个解决办法是

import shutil 
import datetime 
shutil.copyfile('C:\\Users\\Documents\\error.log','C:\\Users\\Documents\' + datetime.now().strftime("%Y%m%d-%H%M%S") + '.log') 

UPDATE 忘了第二个日期时间添加到

import shutil 
import datetime 
shutil.copyfile('C:\\Users\\Documents\\error.log','C:\\Users\\Documents\' + datetime.datetime.now().strftime("%Y%m%d-%H%M%S") + '.log') 
+0

错误Traceback(最近调用最后一次): 文件“checking.py”,第19行,在 shutil.copyfile('C:\ \ Users \\ Documents \\ error.log','C:\\ Users \\ Documents \\'+ d atetime.now()。strftime(“%Y%m%d-%H%M%S” )+'.txt') AttributeError:'module'object has no attribute'now' – Ajsh

+0

我认为strftime(“%Y%m%d-%H%M%S”)导致问题 – Ajsh

+0

Thank You Robert,伟大的代码。 – Ajsh