使用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 08 Python
python删除列表中重复记录的方法
Apr 28 Python
浅谈python内置变量-reversed(seq)
Jun 21 Python
windows 下python+numpy安装实用教程
Dec 23 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python 12306抢火车票脚本 Python京东抢手机脚本
Feb 06 Python
ubuntu安装sublime3并配置python3环境的方法
Mar 15 Python
Python 合并多个TXT文件并统计词频的实现
Aug 23 Python
Python json格式化打印实现过程解析
Jul 21 Python
python字典通过值反查键的实现(简洁写法)
Sep 30 Python
python设置中文界面实例方法
Oct 27 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
Nov 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
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
使PHP自定义函数返回多个值
2006/11/26 PHP
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
浅析PHP中Collection 类的设计
2013/06/21 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
Prototype Object对象 学习
2009/07/12 Javascript
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
JQuery 学习技巧总结
2010/05/21 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
nodejs实现bigpipe异步加载页面方案
2016/01/26 NodeJs
jquery ajax分页插件的简单实现
2016/01/27 Javascript
vue-resource调用promise取数据方式详解
2017/07/21 Javascript
layui.js实现的表单验证功能示例
2017/11/15 Javascript
chorme 浏览器记住密码后input黄色背景处理方法(两种)
2017/11/22 Javascript
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
微信小程序实现蒙版弹出窗功能
2019/09/17 Javascript
Python中处理unchecked未捕获异常实例
2015/01/17 Python
在Pandas中给多层索引降级的方法
2018/11/16 Python
python实现自动获取IP并发送到邮箱
2018/12/26 Python
python matplotlib 画dataframe的时间序列图实例
2019/11/20 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
150行python代码实现贪吃蛇游戏
2020/04/24 Python
javascript实现用户必须勾选协议实例讲解
2021/03/24 Javascript
企业党员公开承诺书
2014/03/26 职场文书
公证书样本
2014/04/10 职场文书
高校优秀辅导员事迹材料
2014/05/07 职场文书
我的中国梦演讲稿400字
2014/08/19 职场文书
营业用房租赁协议书
2014/11/26 职场文书
生死牛玉儒观后感
2015/06/11 职场文书
2015年度环卫处工作总结
2015/07/24 职场文书
解决go在函数退出后子协程的退出问题
2021/04/30 Golang
SpringAop日志找不到方法的处理
2021/06/21 Java/Android