由于刚开始在cnblog写博客,发现网页版没法直接贴图片,加上使用的是mac电脑,快捷键直接把图片存到桌子上。
外加下载东西一大堆。
就动手写了个小脚本,然后放到了local bin的文件夹,终于可以减低一些鼠标负担。
代码如下:
#!/Users/alex/anaconda/bin/python import os,re,shutil def delMess(path,reStr,flag=0): os.chdir(path) fileList=os.listdir(path) if flag==0: for filename in fileList: m=re.search(reStr, filename) if m: os.remove(m.group()) else: for filename in fileList: m=re.search(reStr, filename) if not m: try: os.remove(filename) except OSError: 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