Nesse post vou mostrar três formas diferentes para ler um diretório com Golang.
[SPOILER ALERT] No final desse post vou mostrar como eu apliquei um dos exemplos para poder ler um diretório que continha mais de 3.6 milhões de arquivos.
Vamos iniciar os exemplos utilizando a função ReadDir do package ioutil.
package main
import (
"fmt"
"io/ioutil"
"log"
)
func main() {
files, err := ioutil.ReadDir("/tmp/")
if err != nil {
log.Fatal(err)
}
for _, file := range files {
fmt.Println(file.Name(), file.IsDir())
}
}
Leia mais » 