python備份目錄腳本

此腳本適用於備份指定發佈目錄下的目錄,可適當修改運用!


#!/usr/bin/env python
#backup app python script.
import os
import time
import sys

nowTime = time.strftime("%Y%m%d")

sourcePath = '/home/zcb/resin-4.0.10/apps/'
backupPath = '/home/zcb/tmp/bak'+nowTime

if not os.path.exists('/home/zcb/tmp/bak'+nowTime):
 os.mkdir('/home/zcb/tmp/bak'+nowTime)
 print time.strftime("%Y-%m-%d")+' Backup Directory create successfully!'


applist = []
def getAppList():
 all = os.listdir(sourcePath)
 for i in all:
  if os.path.isdir(sourcePath+i):
   applist.append(i)

def backup_all():
 print  "%s  App Backuping...." % time.strftime("%Y-%m-%d")
 print "-" * 35
 for appName in applist:
  os.chdir(sourcePath)
  tar_command = 'tar -zcf %s/%s.tar.gz %s' % (backupPath,appName,appName)
  if os.system(tar_command) == 0:
          print "\033[;32m%s backup successfully!\033[0m" % appName
         else:
          print "\033[;31m%s backup failed!\033[0m" % appName
 print "-" * 35
 print "End"

def backup_single():
 print  "%s  App Backuping...." % time.strftime("%Y-%m-%d")
        print "-" * 35
        os.chdir(sourcePath)
        tar_command = 'tar -zcf %s/%s.tar.gz %s' % (backupPath,appName,appName)
        if os.system(tar_command) == 0:
         print "\033[;32m%s backup successfully!\033[0m" % appName
        else:
         print "\033[;31m%s backup failed!\033[0m" % appName
        print "-" * 35
        print "End"

if len(sys.argv) == 2:
 appName = sys.argv[1]
 getAppList()
 if appName in applist:
  backup_single()
 else:
  print "%s not exist, Please try again!" % appName
else:
 input = raw_input("No input any parameters, whether to perform a full backup?(y/n) ")
 if input == 'y' or input == 'Y':
  getAppList()
  backup_all()
 else:
  print "Exit Backup, Bye!~"
#print applist


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章