简明 Python 教程中的第一个备份脚本

第一次学习python写的脚本

原为简明 Python 教程中的第一个脚本
原脚本如下

#!/usr/bin/python
# Filename: backup_ver1.py

import os
import time

# 1. The files and directories to be backed up are specified in a list.
source = [‘/home/swaroop/byte‘, ‘/home/swaroop/bin‘]
# If you are using Windows, use source = [r‘C:\Documents‘, r‘D:\Work‘] or something like that

# 2. The backup must be stored in a main backup directory
target_dir = ‘/mnt/e/backup/‘ # Remember to change this to what you will be using

# 3. The files are backed up into a zip file.
# 4. The name of the zip archive is the current date and time
target = target_dir + time.strftime(‘%Y%m%d%H%M%S‘) + ‘.zip‘

# 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
zip_command = "zip -qr ‘%s‘ %s" % (target, ‘ ‘.join(source))

# Run the backup
if os.system(zip_command) == 0:
    print ‘Successful backup to‘, target
else:
    print ‘Backup FAILED‘

因为原脚本是Linux下的 所以个人修改为Windows下的脚本

#coding=utf-8
import os
import time
import sys
reload(sys)
sys.setdefaultencoding(‘gbk‘)
source = ‘F:\\movie\\文字效果\\‘

target_dir = ‘F:\\backup\\‘

target = target_dir + time.strftime(‘%Y%m%d%H%M%S‘) + ‘.zip‘

un_source = unicode (source,‘utf8‘)

zip_command = "7z a -tzip %s %s -r" % (target,un_source)

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

因为要备份的文件夹路径存在中文所以有以下的代码

import sys
reload(sys)
sys.setdefaultencoding(‘gbk‘)
---------------------------------------------
unicode (source,‘utf8‘)

打包的压缩程序使用了7zip
调用为

7z a -tzip 打包到文件 需要打包的目录 -r(-r 包括子目录及子目录文件)

时间: 2024-12-28 01:13:15

简明 Python 教程中的第一个备份脚本的相关文章

[简明python教程]学习笔记之编写简单备份脚本

[[email protected] 0503]# cat backup_ver3.py #!/usr/bin/python #filename:backup_ver3.py import os import time #source source=['/root/a.sh','/root/b.sh','/root/c.sh'] #source='/root/c.sh' #backup dir target_dir='/tmp/' today=target_dir+time.strftime('

简明 Python 教程:总结

 简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容都是注释 3. Python至少应当有第一行那样的特殊形式的注释.它被称作组织行——源文件的头两个字符是#!,后面跟着一个程序.这行告诉你的Linux/Unix系统当你执行你的程序的时候,它应该运行哪个解释器. #!/usr/bin/python 4. Linux/Unix用户适用:chmod命令用来改变文件

【转帖】简明 Python 教程

简明 Python 教程   下一页 简明 Python 教程 Swaroop, C. H. 著 沈洁元  译 版本:1.20 A Byte of Python Copyright © 2003-2005 Swaroop C H 简明 Python 教程 <简明 Python 教程>为 "A Byte of Python" 的唯一指定简体中文译本,版权 © 2005 沈洁元 本书依照 创作公用约定(署名-非派生作品-非商业用途) 发布. 概要 无论您刚接触电脑还是一个有经验

【转】简明 Python 教程

原文网址:http://woodpecker.org.cn/abyteofpython_cn/chinese/ 简明 Python 教程Swaroop, C. H. 著沈洁元  译www.byteofpython.info 版本:1.20 A Byte of Python Copyright © 2003-2005 Swaroop C H 简明 Python 教程 <简明 Python 教程>为 "A Byte of Python" 的唯一指定简体中文译本,版权 © 200

《简明 Python 教程》笔记

<简明 Python 教程>笔记 原版:http://python.swaroopch.com/ 中译版:https://bop.mol.uno/ 有 int.float 没 long.double.没 char,string 不可变. help 函数 如果你有一行非常长的代码,你可以通过使用反斜杠将其拆分成多个物理行.这被称作显式行连接(Explicit Line Joining)5: s = 'This is a string. \ This continues the string.'

《简明Python教程》学习笔记

<简明Python教程>是网上比较好的一个Python入门级教程,尽管版本比较老旧,但是其中的基本讲解还是很有实力的. Ch2–安装Python:下载安装完成后,在系统的环境变量里,在Path变量后面追加安装目录的地址,即可在cmd下使用Python: CH3–Python3中,print的语法改为了print( ):Python编辑器列表:支持Python的IDE列表: CH4–变量不需要特别的变量类型定义过程: CH5–运算表达式及优先级: CH6–控制流,主控制语句行末以“:”结尾:if

[简明python教程]学习笔记2014-05-05

今天学习了python的输入输出.异常处理和python标准库 1.文件 通过创建一个file类的对象去处理文件,方法有read.readline.write.close等 [[email protected] 0505]# cat using_file.py #!/usr/bin/python #filename:using_file.py poem='''Programing is fun when the work is done use Python! ''' f=file('poem.

简明Python教程命令行地址簿的Python与Java实现

最近读完了简明Python教程(A Byte of Python),在此书的最后作者建议读者实现一个命令行Python程序: "在这个程序中,你可以添加.修改.删除和搜索你的联系人(朋友.家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码).这些详细信息应该被保存下来以便以后提取." 现在特地来交作业,同时对作者Swaroop, C. H.和译者沈洁元表示感谢!谢谢两位无私的奉献:) 操作系统windows7,Python版本2.7.5. #address.py #首先我们

简明Python教程笔记(二)----用户交互raw_input()

raw_input() python内建函数 将所有输入看做字符串,返回字符串类型 input()对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float ) input() 本质上还是使用 raw_input() 来实现的,只是调用完 raw_input() 之后再调用 eval() 函数 例子: #!/usr/bin/env pythonthis_year = 2014name = raw_input('please input your name:')age1 =