<dd id="sga4y"><optgroup id="sga4y"></optgroup></dd>
<nav id="sga4y"><code id="sga4y"></code></nav>
  • <optgroup id="sga4y"></optgroup>
    ???? Python ???
    ??10?? ??????????????Python???
    ???? ??????? ????

    ???????

    ??????????????????????????????????????????????????????????

    ??

    ??10.1 ????????????

    #!/usr/bin/python
    # Filename: backup_ver1.py


    import os
    import time

    # 1. The files and directories to be backed up are specified in a list.
    source = ['/home/swaroop/byte', '/home/swaroop/bin']
    # If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that

    # 2. The backup must be stored in a main backup directory

    target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using

    # 3. The files are backed up into a zip file.
    # 4. The name of the zip archive is the current date and time

    target = target_dir + time.strftime('%Y%m%d%H%M%S') + '.zip'

    # 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
    zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))

    # Run the backup
    if os.system(zip_command) == 0:
        print 'Successful backup to', target
    else:
        print 'Backup FAILED'

    ????????code/backup_ver1.py??

    ???

    $ python backup_ver1.py
    Successful backup to /mnt/e/backup/20041208073244.zip

    ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? R? ????????

    ???????

    ???????????????????? ??? ???????????? ???? ??

    ?????????os??time????????????????????????????source????????????????????????????????????????????????????????target_dir?????????zip?r???????????????????????????time.strftime()???????????????.zip?????????????????target_dir????

    time.strftime()???????????????????????????????????%Y???????????????????%m??01??12??????????????????????????????????????????????????????Python??????????Python??????????????Python?????????????????????print????????%?????????????????????????

    ???????????????? ???? ??????????????????????????????????????????????????????????????????zip???????????????????????zip_command????????????????????????????????shell??Linux??????DOS???????????????????????????????

    zip????????????????-q??????????zip????????????????-r?????zip??????????????????????????????????????????????????????????????-qr??????????????????zip?r???????????????????????????????????????????????????join??????source?????????????

    ??????????os.system???? ???? ?????????????????????? ?? ???????????????????shell???????????????????????????????0?????????????????

    ?????????????????????????????????????????????????????????????????????????????????????????????????????

    ??Windows????????
    ??????source???target?????????????????????????Windows????????????????Windows??????\???????????????Python????????????
    ?????????????????????????????????????????????????'C:\\Documents'??r'C:\Documents'??????'C:\Documents'?????????????????????????\D??

    ??????????????????????????????????????????????????????????????????????????????Linux/Unix???????????????????????????????????ʦ????????????????????????????????????????????

    ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

    ???

    ???????????????????????????????????????????????????????????????????????????????????

    ?????????????????????????????????? ??? ????????????????? ???? ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

    ??10.2 ?????????????

    #!/usr/bin/python
    # Filename: backup_ver2.py


    import os
    import time

    # 1. The files and directories to be backed up are specified in a list.
    source = ['/home/swaroop/byte', '/home/swaroop/bin']
    # If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that

    # 2. The backup must be stored in a main backup directory

    target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using

    # 3. The files are backed up into a zip file.
    # 4. The current day is the name of the subdirectory in the main directory

    today = target_dir + time.strftime('%Y%m%d')
    # The current time is the name of the zip archive
    now = time.strftime('%H%M%S')

    # Create the subdirectory if it isn't already there
    if not os.path.exists(today):
        os.mkdir(today) # make directory
        print 'Successfully created directory', today

    # The name of the zip file
    target = today + os.sep + now + '.zip'

    # 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
    zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))

    # Run the backup
    if os.system(zip_command) == 0:
        print 'Successful backup to', target
    else:
        print 'Backup FAILED'

    ????????code/backup_ver2.py??

    ???

    $ python backup_ver2.py
    Successfully created directory /mnt/e/backup/20041208
    Successful backup to /mnt/e/backup/20041208/080020.zip

    $ python backup_ver2.py
    Successful backup to /mnt/e/backup/20041208/080428.zip

    ???????

    ???????????????????????????????????os.exists??????????????????????????????????????????????????????????os.mkdir??????????

    ???os.sep??????????????????????????????????????????Linux??Unix??????'/'????Windows??????'\\'??????Mac OS??????':'?????os.sep??????????????????????????????????????????????????1?????

    ???

    ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????zip?r?????????????????????????zip?r???????????????????????????????

    ??10.3 ?????????????????????????

    #!/usr/bin/python
    # Filename: backup_ver3.py


    import os
    import time

    # 1. The files and directories to be backed up are specified in a list.
    source = ['/home/swaroop/byte', '/home/swaroop/bin']
    # If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that

    # 2. The backup must be stored in a main backup directory

    target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using

    # 3. The files are backed up into a zip file.
    # 4. The current day is the name of the subdirectory in the main directory

    today = target_dir + time.strftime('%Y%m%d')
    # The current time is the name of the zip archive
    now = time.strftime('%H%M%S')

    # Take a comment from the user to create the name of the zip file
    comment = raw_input('Enter a comment --> ')
    if len(comment) == 0: # check if a comment was entered
        target = today + os.sep + now + '.zip'
    else:
        target = today + os.sep + now + '_' +
            comment.replace(' ', '_') + '.zip'

    # Create the subdirectory if it isn't already there
    if not os.path.exists(today):
        os.mkdir(today) # make directory
        print 'Successfully created directory', today

    # 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
    zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))

    # Run the backup
    if os.system(zip_command) == 0:
        print 'Successful backup to', target
    else:
        print 'Backup FAILED'

    ????????code/backup_ver3.py??

    ???

    $ python backup_ver3.py
    File "backup_ver3.py", line 25
    target = today + os.sep + now + '_' +
                                    ^
    SyntaxError: invalid syntax

    ?????????????

    ?????????????Python??????????????????????????Python???????????????????Python????????????????????????????????????????????????????? ???? ????????

    ?????????????????????????????????????????????????????????????????????????????????????Python????????????????????????????????ʦ???????????????????????????????????????????????????????????????????????????????????????????????????????

    ???

    ??10.4 ?????????????

    #!/usr/bin/python
    # Filename: backup_ver4.py


    import os
    import time

    # 1. The files and directories to be backed up are specified in a list.
    source = ['/home/swaroop/byte', '/home/swaroop/bin']
    # If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that

    # 2. The backup must be stored in a main backup directory

    target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using

    # 3. The files are backed up into a zip file.
    # 4. The current day is the name of the subdirectory in the main directory

    today = target_dir + time.strftime('%Y%m%d')
    # The current time is the name of the zip archive
    now = time.strftime('%H%M%S')

    # Take a comment from the user to create the name of the zip file
    comment = raw_input('Enter a comment --> ')
    if len(comment) == 0: # check if a comment was entered
        target = today + os.sep + now + '.zip'
    else:
        target = today + os.sep + now + '_' + \
            comment.replace(' ', '_') + '.zip'
        # Notice the backslash!

    # Create the subdirectory if it isn't already there
    if not os.path.exists(today):
        os.mkdir(today) # make directory
        print 'Successfully created directory', today

    # 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
    zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))

    # Run the backup
    if os.system(zip_command) == 0:
        print 'Successful backup to', target
    else:
        print 'Backup FAILED'

    ????????code/backup_ver4.py??

    ???

    $ python backup_ver4.py
    Enter a comment --> added new examples
    Successful backup to /mnt/e/backup/20041208/082156_added_new_examples.zip

    $ python backup_ver4.py
    Enter a comment -->
    Successful backup to /mnt/e/backup/20041208/082316.zip

    ???????

    ????????????????????????????????????????????????????raw_input??????????????????????len???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

    ????????????????????????????zip?r????????.zip?????????????????????????I???????????????????????????????????????

    ????????

    ??????????????????????????????????????????????????????????????????????????????? ???? ?????????????-v?????????????????????

    ????????????????????????????????????????????????????????sys.argv?????????????????????????list??????extend????????????source???????

    ???????????????????tar???????zip?????????????????????????????tar??gzip?????????????????????????????Windows????????r??WinZip????????????.tar.gz?????tar??????????Linux/Unix??????????????Windows???????????????????

    ???????????????????

    tar = 'tar -cvzf %s %s -X /home/swaroop/excludes.txt' % (target, ' '.join(srcdir))

    ??????????

    ???
    ?????????????r????????????zipfile??tarfile????????Python??????????????????????????????????????os.system???????????????????????????????????
    ?????????????????os.system?????????????????????????????????????????????????????????????????????????????????


    ???? ????? ????
    ???? ??? ???????????
    ?????
    @ssv 97av