bashの良さ


photo by heipei

最近新卒エンジニアとbashについて語る機会があった。僕はbashが好きなので、なぜbashが好きなのか、bashのなにが良いかを語った。その後改めて「なぜ自分はbashが好きなんだっけ?」と思ったのでブログにまとめておく。


bashはシンプル

なんといってもbash自体シンプルなのが良い。標準入力や標準出力をパイプで別のコマンドに流し込んで指示を続行することができる。また、bashで書くスクリプトは1つの要求に対して1つのスクリプトであるため必然的にシンプルにできてしまう。最大でも30行ぐらいで落ち着くイメージがある。僕は長いソースコードを読んだり書いたりするのが好きではないのでbashのシンプルさは魅力的だ。


自分の仕事をスクリプトに丸投げできる

自分の仕事をスクリプトに投げるというのはbashに限らない話ではあるんだけどLAMP系のエンジニアであればほぼ毎日terminalと向き合ってなにかしらのコマンドを実行していると思う。ディレクトリ移動したり、何かのファイルを検索したり、そのファイルの中身を調べたり、その後置換作業を行ったり。

そんな煩わしい作業もちょっとスクリプトを書くだけで解決できてしまう。シェルスクリプトは書いてある通りに上から下にただストンと落ちるのみ。もしくはプロセスを永久ループで常駐させても良い。


ただし、bashは環境に依存するし人に依存する

bashは好きなんだけど書き方が複数存在するのでコーディング規約が無いと書き方が属人化してしまうような気がする*1。また、bashは環境によってコマンドの挙動が異なることがある。例えばsedコマンドはFreeBSD系とLinux系で挙動が異なることがある。

*1:ただし、人それぞれの書き方を学べるので面白いと思う