清理文件的python脚本

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

由于刚开始在cnblog写博客,发现网页版没法直接贴图片,加上使用的是mac电脑,快捷键直接把图片存到桌子上。

外加下载东西一大堆。

就动手写了个小脚本,然后放到了local bin的文件夹,终于可以减低一些鼠标负担。

代码如下:

#!/Users/alex/anaconda/bin/pythonimportos,re,shutildefdelMess(path,reStr,flag=0):

os.chdir(path)

fileList=os.listdir(path)ifflag==0:forfilenameinfileList:

m=re.search(reStr, filename)ifm:

os.remove(m.group())else:forfilenameinfileList:

m=re.search(reStr, filename)ifnotm:try:

os.remove(filename)exceptOSError:

shutil.rmtree(filename)

delMess("/Users/alex/Desktop",".*\.png")

delMess("/Users/alex/Downloads",".*\.iso",1)

基本功能很简单,默认的flag是0,也就是清理桌面上的png图片

flag=1 的功能是删除非某种类别的所有文件,包含文件夹

比较tricky的地方是删除文件夹,由于时间限制没深究os模块

发现删除文件如果删到文件夹会抛出 osError

rmdir也不能用,因为无法删除非空文件夹,如果删非空也会抛出osError异常

所以代码就简化成了 remove文件 如果有异常就用rmtree

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航