ここからが本番!

本連載では、CentOS(まあ、*BSDでもそれ以外のLinuxディストリビューションでも同じなのだが)を使い、ログイン/ログアウトやシャットダウンといった基本操作、OpenSSHを使って遠隔からログインする方法、そのためのクライアント/サーバ設定……などを説明してきた。これでもう、システムにログインして作業することができるようになっているはずだ。

今回からは、本腰を入れて”効率良く手を抜いて作業する方法”を紹介していこう。

ディレクトリの世界を移動するcdコマンド

Windowsでいうところのフォルダは、CentOSでは「ディレクトリ」と呼ばれている。GUI環境のLinuxディストリビューションであれば、エクスプローラ風のアプリケーション(「ファイルマネージャ」と呼ばれることが多い)で、Windowsでフォルダを開く感覚でディレクトリを扱うことができる。だが、sshクライアントを使ってログインしている場合には、ターミナルでcdコマンドを使う。使い慣れれば、こちらのほうが何かと操作の”手抜き”をしやすい。

ディレクトリの世界は、逆さまになった”ワン・ビッグ・ツリー”で構成されている。大きな木の天地をひっくり返し、根っこが一番上、大量の葉っぱが下にあるイメージだ。ディレクトリの最上位、WindowsでいうとCドライブの直下のような部分は、「ルート・ディレクトリ」と呼ばれ、「/」で表現されている。この木の世界をcdコマンドで移動し、目当てのファイルにたどり着いて編集したりするわけだ。

以下の画面のように「pwd」というコマンドを使うと、現在のディレクトリの場所を確認できる。

ユーザーは「/Users/daichi」というディレクトリにいる

「/」がルート・ディレクトリ、「Users」がルート・ディレクトリの下にあるディレクトリ、「daichi」がさらにその下にあるディレクトリだ。このディレクトリがホーム・ディレクトリになっており、ログイン時にはここからスタートする(「daichi」の部分は、ユーザー名になる)。そして、cdコマンドを何の引数も付けずに実行すると、基本的にこのディレクトリに戻ってくる。

少しでも入力に手間をかけたくない

cdコマンドで移動する場合、1つ目の引数に移動したいディレクトリ・パスを指定する。例えば、次のように指定してcdコマンドを実行すると、ユーザーは/usr/local/etc/というディレクトリに移動することになる。

/usr/local/etc/ディレクトリに移動した

何も知らなければ、「cd /usr/local/etc/」を1文字ずつ入力するしかないだろう。ここで「タブ補完」という機能を使えば、少し楽ができる。まず、「cd /u」まで入力したらタブキーを押す。

「cd /u」まで入力し、タブキーを押す

すると、「u」から始まる名前のディレクトリが/usr/しかないため、補完されて「cd /usr/」までが入力される。

「cd /usr/」まで補完入力された

さらに「lo」と入力してからタブキーを押せば、「cd /usr/local/」まで補完入力され、続けて「e」を入力してタブキーを押すことで、「cd /usr/local/etc/」にたどり着く。

最初はやりにくいかもしれないが、タブキーによる補完入力はタイプミスの削減にも繋がるし、慣れればよりスピーディーに入力できるようになる。ガンガン使って、補完入力する癖をつけてしまおう。

なお、この機能はインタラクティブ・シェルが「bash」でも「zsh」でも「ksh」でも、同じように使用可能だ。

さっきいた場所に戻りたい

タブ補完を使うようになると、ある”事故”が発生しやすくなる。補完候補が複数存在すると1度タブキーを押すだけでは補完されないのだが、タブキーからエンターキーを押すまでの流れがくせになっていると、勢いでエンターキーを押してしまうことがある。すると、引数なしで実行したと見なされるのだ。

先に説明したように、cdコマンドを引数なしで実行するとホーム・ディレクトリへ移動する。もともとホーム・ディレクトリにいたのならば良いが、別のディレクトリで作業していた場合、一気にスタート地点に戻るはめになる。

これは結構頻繁にやってしまうことが多いため、この「スタートに戻る」に対抗する「さっきいた場所に戻る」の呪文を覚えておきたい。それは「cd -」だ。

「cd -」を実行し、/usr/local/ディレクトリに戻った

画面のように、cdコマンドに引数として「-」のみを指定すると、直前にいたディレクトリに戻ることができる。タブ補完が効くとは言っても、間違ってホーム・ディレクトリに戻ってしまった時の精神的ダメージは意外に大きい。忙しい時ならなおさらだ。意外と知られていない機能だが、ぜひcdコマンドとセットで、引数に「-」を付けると元のディレクトリに戻ることも覚えておこう。

今回のおさらい

今回のおさらいは、次のとおりだ。

  • cdコマンドでディレクトリを移動できる
  • cdコマンドを引数なしで実行すると、ホーム・ディレクトリに移動する
  • タブキーでディレクトリ・パスを補完入力できる
  • 「cd -」で、直前にいたディレクトリに戻ることができる

cdコマンドは、ターミナル操作の基本中の基本だ。タブキーによる補完入力と組み合わせて、操作にかける時間は最短で済ませよう。