おすすめのコマンドラインで便利なツールについて書いてみる

おすすめ開発ツールはいくらでもあるし人による

初めてプログラミングをする人にはコレがオススメ!

のようなサイトをよく見かけます。

しかし、それらのGUIツールを使って開発してきて熟れた人たちは

次に何をしたら良いんだろう?となっている気がします。

実際、私の勤めている会社では3年目くらいの人によく聞かれます。

今回はそんな人たちの足がかりになるような、

コマンドラインで便利なツールを書いていきたいと思います。

目的

会社に入社してきた3~5年目に説明するときのカンペにしたいと思って書きます。

また、興味があるならこのサイトみるといいよと言えるようにしておきたいと思います。

前提

私は普段Windows(+WSL)、MacLinux(Ubuntu)で開発をしています。

ですので基本的にコマンドライン上で便利なツールをよく使います。

なぜならコマンドラインであれば共通で使えることが多いためです。

※私は環境ごとに使うツールを分けたくない人なのですべて統一したいと考えています

例えばGitの操作が簡単になるSourceTreeは

WindowsMacで使うことができますが、Linuxでは使えないです。

ですのでSourceTreeのようなソフトは使いません。

また、GitやGithub周りは大体の会社でも使われていると思うので今回は書きません。

あと代表的なコマンドにも触れません。

ls, cat, awk, grep, xargs, jq...挙げたらきりがありませんが

このあたりがわかっていれば問題ないと思います。

今回は3つだけ

とは言え一気に言われても結局どれがいいの?となってしまいます。

ですので今回は特に使ってみてほしい3つだけを挙げてみます。

1. Vim

ja.wikipedia.org

言わずもがな、超大人気テキストエディタです。

Emacsも良いのですが3年目あたりの新入社員には使いこなせなさそうというのが本心で、

理由はEmacsの最大の強みであるマクロを使いこなせない可能性が高いからです。

ですのでまずはVimから手を出してみるのはどうでしょうかと提案したいです。

3年目ともなれば

基本的な操作は身についてきていて、プラグインとか難しそうだから使ってない

のような人が多いのではないかと思っています。

そんな人たちにオススメなのがvim bootstrapです。

vim-bootstrap.com

このサイトで開発に使うプログラミング言語を選択して

Generate!ボタンを押下すると.vimrcが手に入ります。

まずはそれを使ってみることからはじめて見ると学習がスムーズです。

もちろんVisual Studio Codeを使い続けてもいいですし、エディタは好みがあると思います。

しかし軽量で最初から入ってる(環境によるけど)Vimを使えるようにするのも悪くありません。

2. Tmux

ja.wikipedia.org

超有名なターミナルマルチプレクサです。

出来ることは多岐にわたりますし、覚えることが多いのですが

最低限、ターミナル上の出力の中から目的の文字を遡って検索したり、

コピー&ペーストしたりが出来るとだけでも覚えておけばとりあえず使えます。

また、同じような位置づけのScreenコマンドと比べてもリソースの使用量が少なく、

コピー&ペーストのマルチクリップボードにデフォルトで対応しています。

さらに、コピーにはViモードもあって直感的に操作することができます。

viモードで使いたい人は以下を参考にして設定ファイルを弄ってみてください。

qiita.com

3. http-server

www.npmjs.com

APIを叩く処理を追加して動かしてみたいけど気軽に叩けるサーバーがない。

開発の初期段階でそんなことを考えたことはないでしょうか。

特にWeb系開発だとこの問題に直面することが多い感じがします。

そんなときに使えるのがnpmでインストールできるhttp-serverです。

今どきのWeb開発(特にReactとか)では大体みんなが使っているnpm。

それを利用して簡単にインストールすることができます。

npm i -g http-server

これをするだけで今すぐ使用できます。

使い方はindex.htmlのあるディレクトリに移動して実行するか、

引数にそのディレクトリのパスを渡すだけで動作します。

おわりに

今回は3年目の社員に使ってみてほしいツールを挙げてみました。

会社によって習熟度は異なると思いますし、一概に言えるものではありませんので

あくまで参考程度にしておいてください。