package fs import ( "os" "path" "sort" ) func LsD(d string) ([]string, error) { return ls(d, true) } func LsF(d string) ([]string, error) { return ls(d, false) } func ls(d string, dirs bool) ([]string, error) { entries, err := os.ReadDir(d) results := make([]string, 0, len(entries)) for i := range entries { if dirs == entries[i].IsDir() { results = append(results, path.Join(d, entries[i].Name())) } } sort.Strings(results) return results, err }