python2.7实现备份
来源:互联网 发布:js this用法 编辑:程序博客网 时间:2024/06/03 04:16
刚刚修改了下简明python教程的第一个备份例子
鉴于我是在windows下操作的,修改如下
import os
import timeyuanwenjian=[r'e:\beifentest',r'e:\beifentest1']
mubiaomulu='e:\\pythonbeifentest\\'
mubiaolujing=mubiaomulu+'w'+time.strftime('%Y%m%d%H%M%S')+'.rar'
#下面这句是最重要的,winrar命令行可以百度下,注意winrar命令行的环境变量,当然你可以设置下,否则提示找不到命令,注意地方就是winrar命令行参数中目录是用双引号括住的。
if os.system(mingling)==0:
print 'successful backup to',mubiaolujing
else:
print 'failed'
成功~
不能自动创建目录
我把
mubiaolujing=mubiaomulu+'w'+time.strftime('%Y%m%d%H%M%S')+'.rar'
删除后有得搞
基于简明python教程,一步一步模仿下来
第二次修改:(主要是对备份时间的管理)
import os
import time
import os.path
yuan=["e:\\beifentest","e:\\beifentest1"]
jintian="e:\\"+time.strftime('%Y%m%d')
shijian=time.strftime('%H%M%S')
if os.path.exists(jintian):
print "get it"
else:
os.mkdir(jintian)
print "successful to creat"
mubiao=jintian+os.sep+shijian+".zip"
mingling="winrar a \"%s\" %s"%(mubiao,' '.join(yuan))
if os.system(mingling)==0:
print "successful"
else:
print "failed"
注:os.sep其实就是自动适配分隔符,window就是\\,它们说为了可移植性,写的过程又忘了目录的表示,\\这样的
第三次修改:(主要是:备份了什么玩意,HUAWEI.zip,APPLE.zip)
起初思路:我们备份的时候会提示备份到HUAWEI这个分类,还是APPLE这个分类。确认并回车后,即可分类的压缩
简明python思路就是:跟我 差不多,只是获取用户键入的信息,多了个处理空格的操作,这是因为处理这样的文件名要容易得多,没必要了,win7支持空格!
import os
import time
import os.path
yuan=["e:\\beifentest","e:\\beifentest1"]
jintian="e:\\"+time.strftime('%Y%m%d')
shijian=time.strftime('%H%M%S')
tip=raw_input("input backup tips:")
if os.path.exists(jintian):
print "get it"
else:
os.mkdir(jintian)
print "successful to creat"
mubiao=jintian+os.sep+shijian+tip+".zip"
mingling="winrar a \"%s\" %s"%(mubiao,' '.join(yuan))
if os.system(mingling)==0:
print "successful"
else:
print "failed"
学习到:内建函数raw_input(),字符串方法
str.replace()
- str.replace(old,new[,count])
Return a copy of the string with all occurrences of substring old replaced bynew. If the optional argumentcount is given, only the first count occurrences are replaced.。
- raw_input([prompt])
If the prompt argument is present, it is written to standard output without a trailing newline. The function then reads a line from input, converts it to a string (stripping a trailing newline), and returns that. When EOF is read,EOFError is raised. Example:
如果prompt变量出现了,它被写到标准输出(也就是会被用户看到)不换行。这功能之后会读取来自输入的一行,转化它成一个字符串(拆除一个尾随的换行),并且返回它(字符串)。当EOF被读取(也就是用户没输入什么花露),EOFError会被引发。例如:
>>> s = raw_input('--> ')--> Monty Python's Flying Circus>>> s"Monty Python's Flying Circus"
If the readline module was loaded, thenraw_input() will use it to provide elaborate line editing and history features.
- 如果readline模块被加载,raw-input会使用它去提供一个详细的行编辑和历史特性
第四次修改:进一步优化
简明教程思路:备份的目录自定义(用户键入目录),通过sys.argv
列表来获取它们,然后我们可以使用list
类提供的extend
方法把它们加到source
列表中去。至于打包命令的优化,我这里依旧使用winrar吧。最理想的创建这些归档的方法是分别使用zipfile
和tarfile
。它们是Python标准库的一部分,可以供你使用。使用这些库就避免了使用os.system
这个不推荐使用的函数,它容易引发严重的错误。然而,我在本节中使用os.system
的方法来创建备份,这纯粹是为了教学的需要。这样的话,例子就可以简单到让每个人都能够理解,同时也已经足够用了
- python2.7实现备份
- python2.7简明之自动备份脚本
- Python2.7实现标签云
- python2.7实现16进制转二进制数据
- 递归实现二分查找(Python2.7)
- python2.7 简易爬虫实现1
- Python2.7,PyQt4,实现键盘监听事件
- python2.7实现杨辉三角
- python2.7
- python2.7
- Python2.7
- python2.6升级python2.7
- Windows SVN变化邮件通知(Python2.7实现)
- python2.7+selenium2实现淘宝滑块自动认证
- Tkinter选择路径功能的实现 Python2.7
- python2.7 模拟鼠标 实现网页打地鼠
- Python2.7实现笛卡尔积N个数组的排列组合
- win10环境下实现python3.5与python2.7共存
- AngularJS常见问题答疑
- iOS 自定义播放器
- Java进阶04 RTTI
- Exynos4412裸机开发——中断处理
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(三)
- python2.7实现备份
- 【SPOJ-GSS1】Can you answer these queries I【线段树】【最大子段和】
- String.Format 方法的几种定义
- 几分钟内学习 Clojure
- Android 开发设计前十个技巧
- 视频的中断退出
- ios layout机制相关方法
- 【PA2011】【BZOJ3073】Journeys
- 6410H264编码rtp串流