File size: 1,846 Bytes
17e971c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #!/usr/bin/python
# coding: utf-8
# -----------------------------
# 宝塔Linux面板网站备份工具
# -----------------------------
import os
import sys
os.chdir('/www/server/panel')
sys.path.append("class/")
if sys.version_info[0] == 2:
reload(sys)
sys.setdefaultencoding('utf-8')
import panelBackup
class backupTools(panelBackup.backup):
def backupSite(self, name, count, echo_id=None):
self.backup_site(name, save=count, echo_id=echo_id)
def backupDatabase(self, name, count, echo_id=None):
self.backup_database(name, save=count, echo_id=echo_id)
# 备份指定目录
def backupPath(self, path, count, echo_id=None):
self.backup_path(path, save=count, echo_id=echo_id)
def backupSiteAll(self, save, echo_id=None):
self.backup_site_all(save, echo_id=echo_id)
def backupDatabaseAll(self, save, echo_id=None):
self.backup_database_all(save, echo_id=echo_id)
if __name__ == "__main__":
backup = backupTools()
type = sys.argv[1]
echo_id = None
if len(sys.argv) > 4: echo_id = sys.argv[4]
if type == 'site':
if sys.argv[2] == 'ALL':
backup.backupSiteAll(sys.argv[3], echo_id)
elif ',' in sys.argv[2]:
for i in sys.argv[2].split(','):
backup.backupSite(i, sys.argv[3], echo_id)
else:
backup.backupSite(sys.argv[2], sys.argv[3], echo_id)
elif type == 'path':
backup.backupPath(sys.argv[2], sys.argv[3], echo_id)
elif type == 'database':
if sys.argv[2] == 'ALL':
backup.backupDatabaseAll(sys.argv[3], echo_id)
elif ',' in sys.argv[2]:
for i in sys.argv[2].split(','):
backup.backupDatabase(i, sys.argv[3], echo_id)
else:
backup.backupDatabase(sys.argv[2], sys.argv[3], echo_id)
|