使用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使用正则表达式检测密码强度源码分享
Jun 11 Python
浅析Python中的多重继承
Apr 28 Python
python和bash统计CPU利用率的方法
Jul 10 Python
Python 爬虫之超链接 url中含有中文出错及解决办法
Aug 03 Python
Django查询数据库的性能优化示例代码
Sep 24 Python
python做量化投资系列之比特币初始配置
Jan 23 Python
python爬虫 urllib模块发起post请求过程解析
Aug 20 Python
python Popen 获取输出,等待运行完成示例
Dec 30 Python
为什么python比较流行
Jun 19 Python
python如何获得list或numpy数组中最大元素对应的索引
Nov 16 Python
appium+python自动化配置(adk、jdk、node.js)
Nov 17 Python
python中yield的用法详解
Jan 13 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
mysql时区问题
2008/03/26 PHP
PHP取得一个类的属性和方法的实现代码
2011/05/22 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
2018/05/28 PHP
JS Excel读取和写入操作(模板操作)实现代码
2010/04/11 Javascript
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
深入理解JavaScript 闭包究竟是什么
2013/04/12 Javascript
Javascript中的Array数组对象详谈
2014/03/03 Javascript
深入理解javascript作用域和闭包
2014/09/23 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
jquery——九宫格大转盘抽奖实例
2017/01/16 Javascript
Angular实现购物车计算示例代码
2017/02/21 Javascript
Bootstrap 3 进度条的实现
2017/02/22 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
细说webpack源码之compile流程-入口函数run
2017/12/26 Javascript
angular6.x中ngTemplateOutlet指令的使用示例
2018/08/09 Javascript
如何通过Proxy实现JSBridge模块化封装
2020/10/22 Javascript
nuxt静态部署打包相对路径操作
2020/11/06 Javascript
在Python的Flask框架中构建Web表单的教程
2016/06/04 Python
利用python批量检查网站的可用性
2016/09/09 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
2017/07/06 Python
python多线程之事件Event的使用详解
2018/04/27 Python
pandas Dataframe行列读取的实例
2018/06/08 Python
详解python 注释、变量、类型
2018/08/10 Python
Django中Aggregation聚合的基本使用方法
2020/07/09 Python
pyspark对Mysql数据库进行读写的实现
2020/12/30 Python
Python中Qslider控件实操详解
2021/02/20 Python
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
总经理助理岗位职责
2013/11/08 职场文书
小学中秋节活动方案
2014/02/06 职场文书
革命先烈的英雄事迹材料
2014/02/15 职场文书
律师授权委托书范本
2014/10/07 职场文书
2014超市收银员工作总结
2014/11/13 职场文书
2014年政工师工作总结
2014/12/18 职场文书
CentOS下安装Jenkins的完整步骤
2022/04/07 Servers