使用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制作在地图上模拟瘟疫扩散的Gif图
Mar 31 Python
Python生成器(Generator)详解
Apr 13 Python
python+selenium开发环境搭建图文教程
Aug 11 Python
python的mysqldb安装步骤详解
Aug 14 Python
深入浅析python with语句简介
Apr 11 Python
python 2.7.13 安装配置方法图文教程
Sep 18 Python
在Python中使用defaultdict初始化字典以及应用方法
Oct 31 Python
Python告诉你木马程序的键盘记录原理
Feb 02 Python
详解Python中is和==的区别
Mar 21 Python
Python对接六大主流数据库(只需三步)
Jul 31 Python
自适应线性神经网络Adaline的python实现详解
Sep 30 Python
python运用pygame库实现双人弹球小游戏
Nov 25 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 gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
2010/05/15 PHP
PHP实现的封装验证码类详解
2013/06/18 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
PHP7.1方括号数组符号多值复制及指定键值赋值用法分析
2016/09/26 PHP
如何运行/调试你的PHP代码
2020/10/23 PHP
利用NodeJS和PhantomJS抓取网站页面信息以及网站截图
2013/11/18 NodeJs
jQuery实现的多选框多级联动插件
2014/05/02 Javascript
JavaScript基础教程之alert弹出提示框实例
2014/10/16 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
Css3制作变形与动画效果
2015/07/24 Javascript
简单实现Vue的observer和watcher
2016/12/21 Javascript
JS作用域深度解析
2016/12/29 Javascript
JavaScript BASE64算法实现(完美解决中文乱码)
2017/01/10 Javascript
JS实现线性表的链式表示方法示例【经典数据结构】
2017/04/11 Javascript
JavaScript实现焦点进入文本框内关闭输入法的核心代码
2017/09/20 Javascript
详解Node全局变量global模块
2017/09/28 Javascript
打字效果动画的4种实现方法(超简单)
2017/10/18 Javascript
浅析Vue中method与computed的区别
2018/03/06 Javascript
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
2020/03/31 Javascript
python列表与元组详解实例
2013/11/01 Python
Python学习之用pygal画世界地图实例
2017/12/07 Python
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
2018/11/07 Python
Pycharm简单使用教程(入门小结)
2019/07/04 Python
用css3制作纸张效果(外翻卷角)
2013/02/01 HTML / CSS
师范生实习个人的自我评价
2013/09/28 职场文书
活动策划邀请函
2014/02/06 职场文书
安全标准化实施方案
2014/02/20 职场文书
学校文明单位申报材料
2014/05/06 职场文书
二手车交易协议书标准版
2014/11/16 职场文书
运动会通讯稿50字
2015/07/20 职场文书
陶瓷类经典广告语集锦
2019/10/25 职场文书
Python 如何安装Selenium
2021/05/06 Python
python基础学习之递归函数知识总结
2021/05/26 Python
Java 数据结构七大排序使用分析
2022/04/02 Java/Android