内容简介: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)
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 如何使用Python删除一个文件或文件夹
- 从 git 的历史记录中彻底删除文件或文件夹
- 在Git repo中恢复已删除的文件夹
- 《邮件和日历》Windows 10版更新:删除其他文件夹
- php删除一个路径下的所有文件夹和文件的方法
- Windows 无法删除文件夹 —— 访问被拒绝 / 因为目录不是空的
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。