雑記 2020-03-13
雑記
プログラミングできねぇ
DFS
func dfs(base, p string, recursive bool, action func(string, os.FileInfo) error) error { path := filepath.Join(base, p) fi, err := os.Stat(path) if err != nil{return err} if fi.IsDir() { entries, err := ioutil.ReadDir(path) if err != nil{return err} for _, entry := range entries { item := filepath.Join(p, entry.Name()) if entry.IsDir() && recursive { if err := dfs(base, item, recursive, action); err != nil{return err} } else { if err := action(item, entry); err != nil {return err} } } else { if err := action(p, fi); err != nil{return err} } return nil }
こういう感じで、 base
に渡したパス以下のファイルやディレクトリへのパスを base
からの距離でリストアップする奴が欲しいんだ…。できればGlobにも対応したい。 filepath.Walk
は絶対パス返してくるのでダメだった。これ適当に描いたけどあってるのかな
おわり
プログラミングはエディタでやろうな