古い言葉に「サボるための手間は惜しむな」というものがあります。PCを使う目的は作業の簡略化です。PCで処理できることは何でもPCにやらせる。PCに作業させるための智恵を絞る「手間」は、結果として後々の作業の簡略化(サボれる)につながるという考え方です。これがコンピュータの本質です。

Windowsで言えばExcelのマクロなどが想像しやすいでしょう。マウスでセル範囲を選び、別のセルをクリック、SUM関数のボタンをクリックして合計値を出す。実に単純な作業です。しかし、毎日のルーチンワークとして1日に数百回も行う作業だとしたら非常に単調で苦痛な作業です。そこでマクロを組み、作業の効率化を図ります。複雑なマクロを組み立てることは、マクロの勉強をしたり、思うように動作しなかったり、面倒で手間がかかる作業かもしれません。ですが、一度マクロが組み上がってしまえば後は簡単です。必要な値を入力すれば、その間の作業はすべてマクロが処理して、計算結果を出力してくれます。

Linux系OSのシェルスクリプトも考え方は同じです。ただ、Windowsのような丁寧な説明もありませんし、少し手の込んだ作業をするには急に難易度があがってしまうため、Linuxユーザーでもなかなか手が出しにくい部分でもあります。使いこなせば、いろいろな業務や日常のPCライフが楽になります。本稿では簡単なシェルスクリプトを作り、日常作業への利用法などを考えてみます。

Windowsのアクセサリに「コマンドプロンプト」というものがあります。起動しても黒い画面が表示されるだけです。文字しか入力できませんし、どのような文字を入力すればよいのかもよくわかりません。ごく短絡的に言えば、このような文字しか入力できないコマンドプロンプトのような画面のことを、一般に「シェル」と呼びます。

Linuxに相当精通した方でもない限り、最適なツールやユーティリティは思い浮かばないものです。Linuxユーザーは基本的なコマンドを覚えて見通しをたて、GUIアプリケーションの操作法を調べながら、作業をしているのではないでしょうか。ただ、シェルやその中で動作するシェルスクリプトの基本的な概念を理解し、活用することでGUI環境にも劣らない効率的な作業ができるのです。