• 文件备份脚本


    要求安装:

    1.Python:http://www.python.org/download/

    2.7z:http://www.7-zip.org/


    backup.py
    # Filename: backup.py
    
    '''Backup files.
        Version: V2, based on Python 3.3
        Usage: backup.py -s:"dir1|dir2|..." -t:"target_dir" [-c:"comment"]
            -s: The source directories.
            -t: The target directory.
            -c: Optional, any comment.
        Examples: 
            backup.py -s:"c:\src\F1|c:\src\F2|c:\src\F 3" -t:"c:\backup"
            backup.py -s:"c:\src\F 3" -t:"c:\backup" -c:"For sample"'''
    
    import os
    import sys
    import time
    
    # Read sys.argv
    print(sys.argv)
    if len(sys.argv) < 2:
        print(__doc__)
        sys.exit()
    
    source=[]
    target_dir=''
    comment=''
    for arg in sys.argv:
        if arg.startswith('-s:'):
            source=arg[3:].split('|')
            print(source)
        elif arg.startswith('-t:'):
            target_dir=arg[3:]+os.sep
            print(target_dir)
        elif arg.startswith('-c:'):
            comment=arg[3:]
            print(comment)
    
    for i in range(0, len(source)):
        source[i] = """ + source[i] + """
        print(source[i])
    
    # Make the file name with the time and comment
    today=target_dir+time.strftime('%Y%m%d')
    now=time.strftime('%H%M%S')
    
    if len(comment)==0: # check if a comment was entered
        target=today+os.sep+now+'.7z'
    else:
        target=today+os.sep+now+'_'+
                comment.replace(' ','_')+'.7z'
    
    # Create the subdirectory by day
    if not os.path.exists(today):
        os.mkdir(today) # make directory
        print('Successfully created directory',today)
    
    # zip command
    zip_command="7z a %s %s" %(target,' '.join(source))
    print(zip_command)
    
    # Run the backup
    if os.system(zip_command)==0:
        print('Successful backup to',target)
    else:
        print('Backup FAILED')
  • 相关阅读:
    LC 774. Minimize Max Distance to Gas Station 【lock,hard】
    LC 272. Closest Binary Search Tree Value II 【lock,hard】
    LC 644. Maximum Average Subarray II 【lock,hard】
    Java --- JSP2新特性
    Java ---Listener监听器
    Java ---Filter过滤器
    Java ---自定义标签(二)
    Java ---自定义标签
    Java ---理解MVC架构
    Java--JDBC连接数据库(二)
  • 原文地址:https://www.cnblogs.com/ldlchina/p/3552474.html
Copyright © 2020-2023  润新知