golangでfindっぽいものを作ってみた
履歴findのオプションがほぼないようなものを作ってみました。
とりあえず、フォルダ以下のファイルを名前で引きたかったのでコードを書いたのを、ライブラリにしてみました。
一応、コマンドとして動かすこともできて、
go get github.com/Eivy/findfile/cmd/ff
としてもらえれば、ff
というコマンドが使えます。
見つかったファイルをどうやって持てばいいのかなーというところで、sliceはappend()
使うとコピーが走るとかいう話で、
じゃあコピーが走らないやつなら速いんだろうと、container/list
のList
を使っています。
ちゃんと測ってないし、作ってから調べてたら「いつでもsliceを使ったほうがいい」みたいなのが出てきたりして、「どうしよう・・・」ってなっています。
とりあえずコマンドとして、find
より速く動いてくれているようです。goroutine万歳。
結論
スピード気にするならベンチしよう。