一個Python指令碼的開發全過程
問題:完成一個可以為我們所有的重要程式做備份的程式。
步驟拆解:
- 需要備份的檔案和目錄由一個列表指定。
檔案備份成一個zip檔案。
zip存檔的名稱是當前的日期和時間。
我們使用標準的zip命令,它通常預設地隨Linux/Unix發行版提供。Windows使用者可以使用Info-Zip程式。注意你可以使用任何地存檔命令,只要它有命令列介面就可以了,那樣的話我們可以從我們的指令碼中傳遞參數給它。
- 備份應該儲存在主備份目錄中。
#!/usr/bin/python<br /># Filename: backup_ver1.py</p><p>import os<br />import time</p><p># 1. The files and directories to be backed up are specified in a list.<br />source = ['/home/swaroop/byte', '/home/swaroop/bin']<br /># If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that</p><p># 2. The backup must be stored in a main backup directory<br />target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using</p><p># 3. The files are backed up into a zip file.<br /># 4. The name of the zip archive is the current date and time<br />target = target_dir + time.strftime('%Y%m%d%H%M%S') + '.zip'</p><p># 5. We use the zip command (in Unix/Linux) to put the files in a zip archive<br />zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))</p><p># Run the backup<br />if os.system(zip_command) == 0:<br /> print 'Successful backup to', target<br />else:<br /> print 'Backup FAILED' </p><p>
輸出為:
$ python backup_ver1.py<br />Successful backup to /mnt/e/backup/20041208073244.zip </p><p>