#!/usr/bin/env python
2 #auto backup files
3 #by lishang 2019--8-19
4
5 import os,sys,time // 导库
6 date = time.strftime('%Y%m%d') 通过time下得strftime方法来获取时间,并设置日期格式
7 source = ['/home/lishang/python'] 设置你要备份的文件的所在路径
8 dir = '/home/lishang/' 设置你要备份到哪的路径
9 r_dir = dir + date +'/' 设置备份到哪的路径下,哪天的文件夹,如/home/lishang/20190820
10 f_name = '%s.tar.gz' % date 设置备份文件之后压缩包文件名20190820.tar.gz
11 r_name = r_dir + f_name 设置备份文件的具体路径/home/lishang/20190820/20190820.tar.gz
12 print '''
13 \033[32m+++++++++++Welcome to use python backup scripts for Linux
14 ++++++++++
15 +++++++++++++++++++++Now Time is %s
16 ++++++++++++++++++++++++++
17 ++++++++++++++++++++++++++++++++++++++++++++++++++++
18 ++++++++++++++++
19 \033[0m''' % date
20 time.sleep(1) 等待一秒
21 def all_bak(): 等一一个方法
22 if os.path.exists(r_dir) == False: 判断,不存在就创建一个,存在就打印信息
23 os.makedirs(r_dir)
24 else:
25 print 'This dir %s is exits' % r_dir
26 tar_cmd = 'tar -zcvf %s %s' % (r_name,''.join(source)) 执行Linux命令固定格式tar -zcvf(a,b)a 是你要 备份到哪的,b是源文件的路径,在python 里边 后边括号里边要加上 ‘’ 来区分,.join()把你要加入的源目录放进去
27 if os.system(tar_cmd) == 0: 在python 里边 通常执行成功会返回 0 状态值,
28 print 'This backup system files %s success !' % r_name
29 else:
30 print 'This backup system files %s failed !' % r_name
31 try:
32 if sys.argv[1] == 'all_bak': sys.argv[1] 获取命令之后的第一个参数,0是文件本身如backup.py
由于是获取,系统命令,可能会出问题,所以放在try--except 里边
33 print 'Please waiting executing Command ......'
34 all_bak()
35 except IndexError:
36 print '\033[31m-------------------------------------------------\033[0m'
37 print "\033[31mUsage: {%s all_bak|help}\033[0m" % sys.argv[0]
try:
40 if sys.argv[1] == 'help':
41 print
42 '\033[31m-------------------------------------------------\033[0m'
43 print "\033[31mUsage: {%s all_bak|help}\033[0m" % sys.argv[0]
44 except IndexError:
45 pass
46 try:
47 if len(sys.argv[1]) == 0:
48 print
49 '\033[31m-------------------------------------------------\033[0m'
50 print "\033[31mUsage: {%s all_bak|help}\033[0m" % sys.argv[0]
51 except IndexError:
52 pass
try:
… import ad
… except ImportError:
… print ‘7410’
…
7410
把要执行的放在 try里边 ,写完要执行的之后,写except 异常/错误名称 再写一个 :
expect (期望) 如果出现和你写的一样的错误,怎么执行,在下一行 按一下 tab 或者两次空格
写你要提示的