使用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实现删除Android工程中的冗余字符串
Jan 19 Python
Python操作CouchDB数据库简单示例
Mar 10 Python
python中getaddrinfo()基本用法实例分析
Jun 28 Python
利用python爬取软考试题之ip自动代理
Mar 28 Python
Python实现迭代时使用索引的方法示例
Jun 05 Python
python使用Turtle库绘制动态钟表
Nov 19 Python
python调用并链接MATLAB脚本详解
Jul 05 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
django项目中新增app的2种实现方法
Apr 01 Python
PyCharm配置anaconda环境的步骤详解
Jul 31 Python
解决pytorch下出现multi-target not supported at的一种可能原因
Feb 06 Python
python实现黄金分割法的示例代码
Apr 28 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
浅析使用Turck-mmcache编译来加速、优化PHP代码
2013/06/20 PHP
ThinkPHP模板Switch标签用法示例
2014/06/30 PHP
Symfony2在Nginx下的配置方法图文教程
2016/02/04 PHP
php 无限级分类 获取顶级分类ID
2016/03/13 PHP
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
PHP实现的日历功能示例
2018/09/01 PHP
Javascript Tab 导航插件 (23个)
2009/06/11 Javascript
JS判断对象是否存在的10种方法总结
2013/12/23 Javascript
jquery实现的鼠标拖动排序Li或Table
2014/05/04 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
Nodejs实现短信验证码功能
2017/02/09 NodeJs
JavaScript数据结构之链表的实现
2017/03/19 Javascript
JavaScript设置名字输入不合法的实现方法
2017/05/23 Javascript
最新Javascript程序员面试试题和解题方法
2017/11/23 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
JS实现换肤功能的方法实例详解
2019/01/30 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
微信小程序云开发实现数据添加、查询和分页
2019/05/17 Javascript
如何在微信小程序中存setStorage
2019/12/13 Javascript
利用Python实现命令行版的火车票查看器
2016/08/05 Python
怎样使用Python脚本日志功能
2016/08/14 Python
Python面向对象程序设计之类的定义与继承简单示例
2019/03/18 Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
2019/03/27 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
基于Keras的格式化输出Loss实现方式
2020/06/17 Python
怀旧收藏品和经典纪念品:Betty’s Attic
2018/08/29 全球购物
杭州龙健科技笔试题.net部分笔试题
2016/01/24 面试题
Laravel中Kafka的使用详解
2021/03/24 PHP
大四学生毕业自荐信
2013/11/07 职场文书
就业推荐表自我鉴定
2014/03/21 职场文书
大学生求职计划书
2014/04/30 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
音乐之声观后感
2015/06/04 职场文书
开票证明
2015/06/23 职场文书
python爬虫之selenium库的安装及使用教程
2021/05/23 Python
阿里云k8s服务升级时502错误 springboot项目应用
2022/04/09 Servers