需要解决的问题备份文件,我使用windows平台进行练习,遇到的问题如下:
1:使用Winrar进行压缩,与Linux下zip命令不同,通过搜索指定Winrar的命令行下压缩命令格式如下:rar a -k -r D:\backupPY\20131107_172045.rar D:\GAE
要在命令行下使用rar还有一个前提,将winrar的安装目录添加到用户环境变量中。
2.windows平台把反斜杠(\)作为目录分隔符,而Python用反斜杠表示转义符!所以,你得使用转义符来表示反斜杠本身或者使用自然字符串。例如,使用’C:\\Documents’或r’C:\Documents’而不是’C:\Documents’
3.示例中目标文件名有单引号,但wanrar的参数中目标文件名是没有单引号的。
最终代码如下:
import os import time source = [r'D:\GAE'] target_dir = 'D:\\backupPY\\' target = target_dir + time.strftime('%Y%m%d_%H%M%S') + '.rar' # zip_command = "zip -qr '%s' %s" % (target,' '.join(source)) zip_command = "rar a -k -r %s %s" % (target,' '.join(source)) print zip_command if os.system(zip_command) == 0: print 'Successful backup to',target else: print 'Backup FAILED'