使用go和python递归删除.ds store文件的方法


Posted in Python onJanuary 22, 2014

python版本:

#!/usr/bin/env python
import os, sys;def walk(path):

print "cd directory:"+path

for item in os.listdir(path):


try:



if(item == ".DS_Store"):




global count




count = count+1




print " find file .Ds_Store"




os.remove(path+"/"+item)



else:




if(os.path.isdir(path+"/"+item)):





print " "+path+"/"+item+" is directory"





walk(path+"/"+item)




else:





print " "+path+"/"+item+" is file"


except OSError,e:



print e
 
if __name__=='__main__':

count = 0

if(len(sys.argv)>1):


root_dir = sys.argv[1]

else:


root_dir = os.getcwd()

walk(root_dir)

print "\ntotal number:"+str(count)

go语言版本:

package mainimport (

"flag"

"fmt"

"os"

"path/filepath"
)
func getFilelist(path string) int {

count := 0

err := filepath.Walk(path, func(path string, f os.FileInfo, err error) error {


if f == nil {



return err


}


if f.IsDir() {



fmt.Printf("cd directry %s\n", path)



return nil


}


if f.Name() == ".DS_Store" {



count++



println(" " + f.Name() + " is deleted")



os.Remove(path)


}


return nil

})

if err != nil {


fmt.Printf("filepath.Walk() returned %v\n", err)

}

return count
}
func main() {

flag.Parse()

root := flag.Arg(0)

count := 0

if root == "" {


crurrent_dir, _ := filepath.Abs(".")


count = getFilelist(crurrent_dir)

} else {


count = getFilelist(root)

}

fmt.Printf("\n\n total number:%d\n", count)
}
Python 相关文章推荐
python获取文件版本信息、公司名和产品名的方法
Oct 05 Python
python实现堆栈与队列的方法
Jan 15 Python
21行Python代码实现拼写检查器
Jan 25 Python
13个最常用的Python深度学习库介绍
Oct 28 Python
详解django自定义中间件处理
Nov 21 Python
对DJango视图(views)和模版(templates)的使用详解
Jul 17 Python
Python时间序列缺失值的处理方法(日期缺失填充)
Aug 11 Python
如何分离django中的媒体、静态文件和网页
Nov 12 Python
Python模块的定义,模块的导入,__name__用法实例分析
Jan 07 Python
解决python调用自己文件函数/执行函数找不到包问题
Jun 01 Python
Python2.x与3​​.x版本有哪些区别
Jul 09 Python
用Python实现Newton插值法
Apr 17 Python
python学习手册中的python多态示例代码
Jan 21 #Python
python pdb调试方法分享
Jan 21 #Python
python发送邮件接收邮件示例分享
Jan 21 #Python
python逐行读取文件内容的三种方法
Jan 20 #Python
c++生成dll使用python调用dll的方法
Jan 20 #Python
python中getattr函数使用方法 getattr实现工厂模式
Jan 20 #Python
python字符串加密解密的三种方法分享(base64 win32com)
Jan 19 #Python
You might like
php at(@)符号的用法简介
2009/07/11 PHP
查看源码的工具 学习jQuery源码不错的工具
2011/12/26 Javascript
{}与function(){}选用空对象{}来存放keyValue
2012/05/23 Javascript
JavaScript中的null和undefined区别介绍
2015/01/01 Javascript
Javascript毫秒数用法实例
2015/02/05 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(下)
2015/10/28 Javascript
JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例
2016/01/26 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
JS简单实现浮动窗口效果示例
2016/09/07 Javascript
JS重载实现方法分析
2016/12/16 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
Vue.js 中的 $watch使用方法
2017/05/25 Javascript
vue 如何添加全局函数或全局变量以及单页面的title设置总结
2017/06/01 Javascript
通过jquery的ajax请求本地的json文件方法
2018/08/08 jQuery
判断iOS、Android以及PC端的示例代码
2018/11/15 Javascript
微信小程序页面调用自定义组件内的事件详解
2019/09/12 Javascript
python 用下标截取字符串的实例
2018/12/25 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
Win10下用Anaconda安装TensorFlow(图文教程)
2020/06/18 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
HTML5 Canvas 破碎重组的视频特效的示例代码
2019/09/24 HTML / CSS
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
梅西酒窖:Macy’s Wine Cellar
2018/01/07 全球购物
美国户外烹饪产品购物网站:Outdoor Cooking
2020/01/10 全球购物
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
网络安全方面的面试题
2016/01/07 面试题
保洁主管岗位职责
2013/11/20 职场文书
养殖项目策划书范文
2014/01/13 职场文书
幼儿园国庆节活动方案
2014/02/01 职场文书
医院竞聘演讲稿
2014/05/16 职场文书
毕业生见习报告总结
2014/11/08 职场文书
幼儿园老师工作总结2015
2015/05/22 职场文书
传单、海报早OUT了,另类传单营销方案送给你!
2019/07/15 职场文书
解决Python保存文件名太长OSError: [Errno 36] File name too long
2022/05/11 Python