【Linux】複数のコマンドをまとめて実行&&のつかいどころ

こんにちは。今回は複数のコマンドをまとめて実行する&&のつかいどころについて解説します。&&のようにシンプルな機能はいざ使おうと思っても、どのように使ったら便利なのかが分かりづらいことがあります。今回はそのような疑問を掘り下げて行きたいと思います。

&&を使うと便利なシーン

結論から述べます。シェルで作業をしていて&&が役立つシーンは「複数のコマンドをまとめて繰り返し実行したい時」です。これは「複数のコマンドをまとめて」、と「繰り返し実行」の2要素に分割できます。この2要素が揃ったときが&&を使うタイミングです。

複数のコマンドをまとめて実行

複数のコマンドをまとめて実行したいとはどういうことでしょうか。それは言い換えると「やりたいことを成すために、複数のコマンドを実行する必要がある」状態です。

非常に簡単な例を挙げます。

$ cd sample && ls

上述のコマンドはcdでフォルダを移動し、lsで移動したフォルダの中身を表示しています。この操作でやりたいことは「フォルダを移動して中身を表示すること」です。丁度、Windowsのエクスプローラでフォルダを移動するときと同じ操作ですね。linuxではフォルダの移動とファイルの表示は異なるコマンドですので、Windowsのエクスプローラと同じようにしたい場合は2つコマンドを実行しなければなりません。面倒くさいので1コマンドでできないかというニーズです。

繰り返し実行

&&を使うかどうかの判定条件として繰り返し実行するかを考えると良いです。1度しか使わない場合は&&を使おうが使うまいが作業者の負担はあまり変わらないからです。対して、何度も使用する場合はシェルのヒストリーに記録されますので、使えば使うほど効率は高まることになります。

先程挙げた例をもう一度使用します。

$ cd sample && ls

この例は&&でつなげる必要があるかは、繰り返し使用するかどうかに掛かっています。それは言い換えるとsampleフォルダに何度もアクセスするかどうかです。もしsampleが作業フォルダのようなものであれば、何度もアクセスするので必要かもしれません。

まとめ

今回は&&のつかいどころについて解説しました。シェルで作業をしていて &&が使えるシーンは以下の2つを満たしている時です。

  • 複数のコマンドをまとめて実行する必要がある
  • 繰り返し実行する

&&を使って効果があるかどうかを見極めてから使用してみてください。

Linux

Posted by kobainmac