使用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中的set实现不重复的排序原理
Jan 24 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
Jan 30 Python
Python基于opencv的图像压缩算法实例分析
May 03 Python
Django后台获取前端post上传的文件方法
May 28 Python
python实现求两个字符串的最长公共子串方法
Jul 20 Python
详解如何设置Python环境变量?
May 13 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
Jun 19 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
Dec 13 Python
python如何代码集体右移
Jul 20 Python
python openCV实现摄像头获取人脸图片
Aug 20 Python
python爬虫之selenium库的安装及使用教程
May 23 Python
python​格式化字符串
Apr 20 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
重置版战役片段
2020/04/09 魔兽争霸
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
2012/03/27 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
PHP利用Cookie设置用户30分钟未操作自动退出功能
2017/07/03 PHP
php设计模式之工厂模式用法经典实例分析
2019/09/20 PHP
php中关于换行的实例写法
2019/09/26 PHP
javascript 时间比较实现代码
2009/10/28 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
使用js判断当前时区TimeZone是否是夏令时
2014/02/23 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
详解Vue2中组件间通信的解决全方案
2017/07/28 Javascript
vue.js中$set与数组更新方法
2018/03/08 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
vue draggable resizable gorkys与v-chart使用与总结
2019/09/05 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
JS页面获取 session 值,作用域和闭包学习笔记
2019/10/16 Javascript
基于jQuery拖拽事件的封装
2020/11/29 jQuery
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
python opencv检测目标颜色的实例讲解
2018/04/02 Python
python自动结束mysql慢查询会话的实例代码
2019/10/27 Python
Python3.7+tkinter实现查询界面功能
2019/12/24 Python
Python拼接字符串的7种方式详解
2020/03/19 Python
Sunglasses Shop丹麦:欧洲第一的太阳镜在线销售网站
2017/10/22 全球购物
集团公司总经理岗位职责
2013/12/20 职场文书
市场营销求职信范文
2014/02/21 职场文书
体育系毕业生自荐信
2014/06/28 职场文书
2014年项目工作总结
2014/11/24 职场文书
先进典型事迹材料
2014/12/29 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
Python 语言实现六大查找算法
2021/06/30 Python