Linuxを使いこなす上で、絶対にマスターしておきたいのが「コマンドライン操作」だ。この特集では、コマンドライン操作に苦手意識を持つ人に向けて、「シェル」や「端末」などの根本的な仕組みからコマンド操作の基本や活用方法までを解説する。
Part1では、コマンドラインとは何か、コマンドライン操作を学ぶ意義や必要なソフトウエア、コマンドの種類などについて解説します。全体像をつかんでからコマンドライン操作を始めれば、操作について悩むことが減ります。
最近のLinuxディストリビューションは、Windowsのように、グラフィカルな画面上で主にマウスなどのポインティングデバイスを使って各種の操作をする「GUI(Graphical User Interface)」が充実しています(図1)。その一方で、昔ながらの、キーボードから「コマンド」と呼ばれる文字列を打ち込み、それを実行することでさまざまな操作を実現する「CUI(Character User Interface)」あるいは「CLI(Command Line Interface)」も利用できます(図2)。
CUI(あるいはCLI)におけるコマンドを入力する場所のこと、あるいは入力したコマンド(行)のことを「コマンドライン」と呼びます。
Linuxの普及が始まった1990年代中盤には、まだGUI環境が十分整備されておらず、コマンドラインによる操作が主流でした*1。しかし、1990年代後半から、統一感のあるGUIを備えたアプリ群で構成される「統合デスクトップ環境」と呼ばれるソフトウエアが普及し始めたことで、LinuxでもGUI操作が一般化してきます*2。CPUやビデオカードの性能向上、主メモリー量の増加など、PCの資源(リソース)がリッチになり、GUIをストレスなく使用できる環境が整ってきたという要因もあります。
コマンドライン操作の利点
「GUIがあれば、古臭くて操作が面倒なCUIは必要なの?」と感じる人もいるでしょう。しかしGUIとCUIには、それぞれメリットとデメリットがあり、目的によって使い分けた方が効率的です。
GUIの利点は、CUIに比べて直感的な操作ができることです。それによって、コマンドを覚えていない人でも操作が可能です。その半面、快適なGUIを提供するには、CUIに比べてコンピュータに高い性能が要求されます。最近のPCは高性能なため多くの場合問題にはなりませんが、組み込み機器やサーバー機ではGUIが使えないことがあります*3。また、PCをネットワーク越しにリモート操作する場合、GUIだと画面を転送するのに大量のデータをやり取りします。そのため、通信速度が低いと快適な操作ができません。
また、Part3で紹介するように、コマンドライン操作は履歴が残ります。そのため、同じ作業を簡単に再現できます。Part5で紹介する「シェルスクリプト」を使用すれば、繰り返し処理や定時処理をするのも容易です。こうした点もCUIの大きな魅力です。