這篇文章給大家介紹Python中10.4 備份腳本代碼中需注意的地方有哪些,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供金華網(wǎng)站建設(shè)、金華做網(wǎng)站、金華網(wǎng)站設(shè)計(jì)、金華網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、金華企業(yè)網(wǎng)站模板建站服務(wù),十多年金華做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
在例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 directorytarget_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 directorytoday = 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 filecomment = 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 archivezip_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’
關(guān)于Python教程的相關(guān)代碼,文中提到“我還希望有的一個(gè)優(yōu)化是使用tar命令替代zip命令。這樣做的一個(gè)優(yōu)勢(shì)是在你結(jié)合使用tar和gzip命令的時(shí)候,備份會(huì)更快更小。如果你想要在Windows中使用這些歸檔,WinZip也能方便地處理這些.tar.gz文件。tar命令在大多數(shù)Linux/Unix系統(tǒng)中都是默認(rèn)可用的。Windows用戶也可以下載安裝它。
命令字符串現(xiàn)在將成為:
tar = ‘tar -cvzf %s %s -X /home/swaroop/excludes.txt’
% (target, ‘ ‘.join(srcdir))
需要補(bǔ)充的是Windows用戶安裝完LibArchive后命令為bsdtar,而且若想使用-z這個(gè)選項(xiàng),還需安裝gzip軟件。
代碼中的
target = today + os.sep + now + ‘.zip’
改為
target = today + os.sep + now + ‘.tar.gz’
使用
bsdtar -cvzf %s %s -X /home/swaroop/excludes.txt’ % (target, ‘ ‘.join(source))
英文原版已經(jīng)沒有用tar替換zip的內(nèi)容了,提出建議用Python標(biāo)準(zhǔn)庫中zipfile和tarfile來重寫ver5。
關(guān)于Python中10.4 備份腳本代碼中需注意的地方有哪些就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。