python使用7z解压软件备份文件脚本分享

381次阅读  |  发布于5年以前

要求安装:

1.Python
2.7z解压软件

backup_2.py

复制代码 代码如下:

Filename: backup_2.py

'''Backup files.
Version: V2, based on Python 3.3
Usage: backup.py -s:"dir1|dir2|..." -t:"target_dir" [-c:"comment"]
-s: The source directories.
-t: The target directory.
-c: Optional, any comment.
Examples:
backup.py -s:"c:\\src\\F1|c:\\src\\F2|c:\\src\\F 3" -t:"c:\\backup"
backup.py -s:"c:\\src\\F 3" -t:"c:\\backup" -c:"For sample"'''

import os
import sys
import time

Read sys.argv

print(sys.argv)
if len(sys.argv) < 2:
print(doc)
sys.exit()

source=[]
target_dir=''
comment=''
for arg in sys.argv:
if arg.startswith('-s:'):
source=arg[3:].split('|')
print(source)
elif arg.startswith('-t:'):
target_dir=arg[3:]+os.sep
print(target_dir)
elif arg.startswith('-c:'):
comment=arg[3:]
print(comment)

for i in range(0, len(source)):
source[i] = "\"" + source[i] + "\""
print(source[i])

Make the file name with the time and comment

today=target_dir+time.strftime('%Y%m%d')
now=time.strftime('%H%M%S')

if len(comment)==0: # check if a comment was entered
target=today+os.sep+now+'.7z'
else:
target=today+os.sep+now+''+\
comment.replace(' ','
')+'.7z'

Create the subdirectory by day

if not os.path.exists(today):
os.mkdir(today) # make directory
print('Successfully created directory',today)

zip command

zip_command="7z a %s %s" %(target,' '.join(source))
print(zip_command)

Run the backup

if os.system(zip_command)==0:
print('Successful backup to',target)
else:
print('Backup FAILED')

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8