Listare file in maniera ricorsiva in Go

Mattepuffo's logo
Listare file in maniera ricorsiva in Go

Listare file in maniera ricorsiva in Go

In un precedente articolo, abbiamo visto come listare files in una cartella in Go.

In questo vediamo come fare la stessa cosa ma in maniera ricorsiva.

Quindi andremmo a listare anche i files nelle sottocartelle.

Per fare questa operazione usiamo filepath.Walk:

package main

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

func main() {
	dir := "/run/media/fermat/DATI/Personal/Musica/"

	err := filepath.Walk(dir, func(path string, info os.FileInfo, err error) error {
		if err != nil {
			fmt.Println(err)
			return err
		}

		fmt.Printf("path completo: %sn | nome: %sn", path, info.Name())

		return nil
	})

	if err != nil {
		fmt.Println(err)
		os.Exit(0)
	}

}

Enjoy!


Condividi

Commentami!