RSS DEV-Gemeinschaft

Mustervergleich mit Glob: Dateien nach Muster finden 5/9

Die `filepath.Glob`-Funktion in Go bietet eine leistungsstarke Möglichkeit, Dateien und Verzeichnisse mithilfe von Mustervergleich zu finden. Die Funktion gibt eine Slice von übereinstimmenden Dateipfaden und einen Fehler zurück. Die Fehlerbehandlung ist einfach, mit dem einzigen Fehler `filepath.ErrBadPattern`, der auftritt, wenn die Mustersyntax fehlerhaft ist. Die Funktion arbeitet standardmäßig im aktuellen Arbeitsverzeichnis, aber Sie können absolute oder relative Pfade in Ihren Mustern angeben. Die Mustersyntax basiert auf vertrauten Shell-Glob-Konventionen, hat jedoch spezifische Regeln und Einschränkungen. Platzhalterzeichen, Zeichenklassen und Bereiche können verwendet werden, um Dateinamen und -erweiterungen zu übereinstimmen. Die Funktion folgt keinen symbolischen Links und gibt nur Pfade zurück, die tatsächlich im Dateisystem existieren. Das `io/fs`-Paket hat in Go 1.16 die `GlobFS`-Schnittstelle eingeführt, die es Dateisystemen ermöglicht, optimierte Glob-Implementierungen bereitzustellen. Native Glob-Implementierungen können die manuelle Durchquerung, insbesondere bei großen Verzeichnisstrukturen, erheblich übertreffen. Wenn ein Dateisystem die `GlobFS`-Schnittstelle nicht implementiert, fällt Go automatisch auf eine Verzeichnisdurchquerungs-Implementierung zurück.
favicon
dev.to
Pattern Matching with Glob: Finding Files by Pattern 5/9