当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


GO WalkDir用法及代码示例

GO语言"io/fs"包中"WalkDir"函数的用法及代码示例。

用法:

func WalkDir(fsys FS, root string, fn WalkDirFunc) error

WalkDir 遍历以根为根的文件树,为树中的每个文件或目录调用 fn,包括根。

访问文件和目录时出现的所有错误都由 fn 过滤:有关详细信息,请参阅 fs WalkDirFunc 文档。

这些文件按词法顺序遍历,这使得输出具有确定性,但需要 WalkDir 在继续遍历该目录之前将整个目录读入内存。

WalkDir 不跟随在目录中找到的符号链接,但如果 root 本身是符号链接,它的目标将被遍历。

例子:

package main

import (
    "fmt"
    "io/fs"
    "log"
    "os"
)

func main() {
    root := "/usr/local/go/bin"
    fileSystem := os.DirFS(root)

    fs.WalkDir(fileSystem, ".", func(path string, d fs.DirEntry, err error) error {
        if err != nil {
            log.Fatal(err)
        }
        fmt.Println(path)
        return nil
    })
}

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 WalkDir。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。