Python 备份文件


问题列表:

1.需要备份的文件和目录列表指定

2.备份应存放在主备份目录里

3.备份的压缩格式 zip 或 rar

4.zip 或 rar 存档命令

5.维护环节:采用更好的文件名机制,使用时间作为文件名,而当前的日期作为目录名,存放在主备份目录中,这样做的优势是备份会以等级结构存储,易于管理。

代码部分:

    #coding:utf-8
    import os
    import time

    source = [r'C:\test.txt']
    target_dir = r'E:\backup'
    # 获取系统时间
    today = target_dir +time.strftime('%Y%m%d')
    now = time.strftime('%H%M%S')
    # 输入备注
    comment = raw_input('请输入备注')
    if len(comment) == 0:
        print ('无备注')
        target = today + os.sep + now + '.rar'
    else:
        target = today + os.sep + now + comment.replace('', '_') + '.rar'

    if not os.path.exists(today):
        os.mkdir(today)
        print ('创建目录' + today + '成功')

    # 备份命令
    #zip_command = "zip -qr  '%s'    %s"     %   (target,    ''.join(source))
    #rar_command = 'rar a{0} {1}'.format(target,source)
    #rar_command = "rar a %s %s" % (target, ''.join(source))
    rar_command = '"C:\Program Files (x86)\WinRAR\Rar.exe" a %s %s' % (target, ' '.join(source))
    # Run the backup
    print rar_command
    if os.system(rar_command) == 0:
        print('备份成功,存放在: ' + target)
    else:
        print os.system(rar_command)
        print 'Backup FAILED'

惨遭问题:

因为windows下的,所以下载的winrar,然后把执行文件放到window/system下,相当于配置环境变量, 一开始执行的备份命令为rar_command = "rar a %s %s" % (target, ''.join(source)) 可是执行一直错误,cmd执行却没有事,百度了好多,字面都是这种执行命令,但这种压根就没有当做命令去处理,而是简简单单的字符串处理罢了。

错误提示:'zip' �����ڲ����ⲿ���Ҳ���ǿ����еij��� ���������ļ��� failed backup

当时心中一万个 ***, 后面我直接把命令exe路径填上,就可以了,希望对小哥们有用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值