我已将超过 500 GB 的数据下载到 AWS 的单个目录中。每当我尝试访问该目录时,命令行都会挂起并且不向我显示任何内容。
我正在尝试运行一些代码,通过打印出每个文件的路径来与文件交互,但命令行挂起,然后退出程序。
该程序肯定会开始执行,因为“打印文件路径”显示在控制台上。
func main() {
fmt.Println("Printing file path's")
err := filepath.Walk(source,
func(fpath string, info os.FileInfo, err error) {
if !info.IsDir() && file path.Ext(fpath)==".txt" {
fmt.Println(fpath)
}
}
}
}
我应该如何处理能够在命令行中查看所有文件的情况以及为什么该程序无法运行?
更新:通过使用
files, err := dir.Readdir(10)
if err == io.EOF {
break
}
我能够抢占目录中的前 10 个文件夹/文件。使用循环,我可以继续执行此操作,直到到达目录末尾。
这不像 walk 功能那样依赖于对文件/文件夹进行排序,因此效率更高。
慕无忌1623718
相关分类