Rust製の高性能コマンド3選
Rustで作られたコマンドラインツールに良いものが多いと聞いて、Rust製の便利なコマンドをまとめてみます。RustがC/C++を置き換える言語というのもありますが、GNUの伝統的なツールをブラッシュアップしたツールがRustでいろいろ出てきているのはとても興味深いです。
findコマンドを置き換える fd
fdはGNUの伝統的な検索ツールfindの置き換えです。findよりも簡潔にファイルの検索が可能です。
GitHubのリポジトリはこちらで、インストールも各パッケージマネージャーから使えます。
# mac
$ brew install fd
# ubuntu
$ sudo apt install fd-find
# win
$ choco install fd
使い方は、検索したりディレクトリでfd キーワード
と書くだけです。ポイントはfindと違って特にオプションをしていしなくても良いところです。しかもファイルに応じて色分けもされるので、とても分かりやすいです。
$ fd 石
用語集/石投げ器.txt
用語集/隅石.txt
用語集/雪花石こう.txt
デフォルトで正規表現が指定できるのでとても便利です。
$ fd '^石'
用語集/石投げ器.txt
grepを置き換えるripgrep(rg)
ripgrepは伝統的なGREPを置き換えるテキスト検索ツールです。GitHubのリポジトリはこちらです。
インストールは次の通りです。
# mac
$ brew install ripgrep
# ubuntu
$ sudo apt-get install ripgrep
# win
$ choco install ripgrep
こちらもデフォルトが秀逸でrg キーワード
と書けばカレントディレクトリ以下のファイルの中身を調べてくれます。
$ rg 東京
talks-ja/jwb_J_202009_02_r240P.json.txt
182:今は 東京から20分ほどの所にある
189:区域には東京ディズニーランドがあります
rg キーワード -g 'ファイルパターン'
のように検索するファイルに対するパターンも指定できます。
$ rg 雪 -g "*.txt"
yougo-all.txt
2657:雪花石こう
なお-z
を指定するとZIPファイルの中身も検索してくれるので便利。
catを置き換えるbat
batはcatコマンドを置き換えるものです。小さなファイルはcatのように表示し、大きなファイルはlessに渡してページングしてくれます。そして、batの一番の特徴は、ファイルごとにシンタックスハイライトしてくれることです。GitHubのページはこちらです。
インストールは以下の感じです。
# mac
$ brew install bat
# ubuntu
$ sudo apt install bat
# win
$ choco install bat
使い方はcat
と同じで、bat ファイル名
と書くだけです。
その他のRustコマンド
ほかにも、Rustで作ったコマンドをまとめてくれている方がいるので、機会を見て試してみたいと思います。
ちょっと見ていて気になったコマンド
Discussion