golang 递归删除PaxHeader文件夹

栏目: Go · 发布时间: 6年前

内容简介:Linux系统下打成tar.gz包发到Windows系统下然后解压后,由于tar.gz的一些特性Windows下的解压软件支持的不好导致每个文件夹下都有 PaxHeader 文件夹  就写了个递归删除的代码

Linux系统下打成tar.gz包发到Windows系统下然后解压后,由于tar.gz的一些特性Windows下的解压软件支持的不好导致每个文件夹下都有 PaxHeader 文件夹  就写了个递归删除的代码

package main

import (
	"fmt"
	"os"
	"path/filepath"
)

func delFilelist(path string) {
	err := filepath.Walk(path, func(path string, f os.FileInfo, err error) error {
		if ( f == nil ) {
			return nil //f为空 错误不为空 错误是文件不存在 可以忽略
		}
		if f.IsDir() {
			if f.Name() == "PaxHeader" {
				err := os.RemoveAll(path)
				if err != nil {
					fmt.Println(err)
				}
				fmt.Printf("删除文件PaxHeader %s  \n" ,path)
			}
			return nil
	}
	//	println(path)
		return nil
	})
	if err != nil {
		fmt.Printf("walk 错误 err: %v\n", err)
	}
}

func main(){
    root := "D:/mygo/src"
	delFilelist(root)
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Developing Large Web Applications

Developing Large Web Applications

Kyle Loudon / Yahoo Press / 2010-3-15 / USD 34.99

As web applications grow, so do the challenges. These applications need to live up to demanding performance requirements, and be reliable around the clock every day of the year. And they need to withs......一起来看看 《Developing Large Web Applications》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具