Linux cd コマンド:ディレクトリの移動

LinuxBeginner
オンラインで実践に進む

はじめに

Linux での移動操作の世界へようこそ。この実験では、Linux のファイルシステムを移動するための基本ツールである cd コマンドを学びます。ディレクトリがつながる広大な都市を探検しているところを想像してください。cd コマンドは、Linux という「都市」(ファイルシステム)のさまざまな「地区」(ディレクトリ)をすばやく移動するための乗り物です。

現在の場所を確認する

移動を始める前に、Linux という都市のどこにいるのかを確認しましょう。

  1. ターミナルを開きます。ターミナルは、Linux のファイルシステムを操作するためのコントロールパネルです。最初は難しそうに見えるかもしれませんが、このデジタル世界の GPS のようなものだと考えてください。

Linux terminal control panel

  1. 次のコマンドを入力し、Enter キーを押します。
pwd

このコマンドは「print working directory」の略で、現在の場所を表示します。入力を間違えても心配ありません。コマンドをもう一度入力できます。

次のような出力が表示されます。

/home/labex/project

これは、現在 home ディレクトリ内にある labex ディレクトリの中の、project ディレクトリにいることを示しています。Linux という都市における現在の住所のようなものです。

注:異なる出力が表示されても慌てないでください。開始位置が異なるだけです。重要なのは、出力が何を表しているかを理解することです。

最初の移動――ホームディレクトリへ移動する

現在地が分かったので、最初の移動をしてみましょう。Linux という都市でいう拠点にあたる、ホームディレクトリへ移動します。

  1. 次のコマンドを入力し、Enter キーを押します。
cd ~

チルダ(~)は、ホームディレクトリを表すショートカットです。GPS に「自宅へ連れて行って」と伝えるようなものです。

キーボードでチルダを入力できない場合は、引数なしで cd を実行してください。同じホームディレクトリへ移動できます。

cd
  1. 現在地を確認します。
pwd

次のように表示されます。

/home/labex

これで、cd コマンドを使った最初の移動が完了しました。/home/labex が表示されない場合は、cd ~~ の前にスペースを入れます)または引数なしの cd を実行してみてください。

特定のディレクトリへ移動する

ホームディレクトリに戻ったので、特定のディレクトリへ移動してみましょう。最初にいた project ディレクトリへ移動します。

  1. 次のコマンドを入力し、Enter キーを押します。
cd project

これは GPS に「project 地区へ連れて行って」と伝えるような操作です。ディレクトリが存在しないというエラーが表示された場合も心配ありません。ls を実行して利用可能なディレクトリを一覧表示し、その中から表示されたディレクトリを 1 つ選んでください。

  1. 移動後の場所を確認します。
pwd

次のように表示されます。

/home/labex/project

これで特定のディレクトリへの移動に成功しました。別のディレクトリにいる場合も問題ありません。重要なのは、ホームディレクトリから別のディレクトリへ移動できたことです。

上の階層へ移動する――親ディレクトリに戻る

ディレクトリ構造の上の階層へ移動する必要がある場合があります。ホームディレクトリに戻ってみましょう。

  1. 次のコマンドを入力し、Enter キーを押します。
cd ..

2 つのドット(..)は親ディレクトリを表します。GPS に「1 つ上の地区へ連れて行って」と伝えるようなものです。

  1. 現在地を確認します。
pwd

次のように表示されます。

/home/labex

ディレクトリ構造を 1 階層上へ移動できました。/home/labex にいない場合も心配ありません。重要なのは、移動前の場所から 1 階層上へ移動できたことです。

すばやく戻る――直前のディレクトリに戻る

Linux には、直前にいたディレクトリへ戻るための便利なショートカットがあります。

  1. まず、別のディレクトリへ移動します。ホームディレクトリにいる場合は、次のコマンドを実行できます。
cd project

project が存在しない場合は、ls を実行して利用可能なディレクトリを確認し、そのディレクトリへ cd で移動してください。

  1. ショートカットを使って、移動前のディレクトリに戻ります。
cd -

このコマンドは GPS に「さっきいた場所へ戻して」と伝えるようなものです。

  1. 現在地を確認します。
pwd

ステップ 1 の前にいたディレクトリへ戻っているはずです。この -(ハイフン)は、2 つのディレクトリをすばやく切り替えるときに便利なショートカットです。

絶対パス――ルートディレクトリから移動する

ここまでは、現在地を基準にした相対パスを使ってきました。次は、現在地に関係なく特定の場所へ移動できる絶対パスを使います。

  1. 次のコマンドを入力し、Enter キーを押します。
cd /etc

これはルートディレクトリ(/)から始まる絶対パスです。/etc ディレクトリは、設定ファイルを格納する Linux の重要なシステムディレクトリです。国から建物までの完全な住所を GPS に入力するようなものです。

  1. 現在地を確認します。
pwd

次のように表示されます。

/etc

絶対パスを使って特定の場所へ移動できました。このディレクトリはすべての Linux システムに存在するため、エラーなくアクセスできるはずです。

  1. このディレクトリの内容を少し確認します。
ls

多くの設定ファイルとディレクトリの一覧が表示されます。今はすべてを理解する必要はありません。ここでは内容を確認するだけです。

  1. 次に、絶対パスを使ってホームディレクトリへ戻ります。
cd /home/labex

ファイルシステム内のどこにいても、このコマンドを実行すればホームディレクトリへ直接戻れます。

絶対パスは完全な住所のようなもので、どこからでも使えます。ただし、相対パスより入力が長くなることがよくあります。

Linux のイースターエッグ――曲がりくねった小道の迷路

基本的な移動方法を身につけたので、移動に関係する Linux のイースターエッグを使って少し楽しんでみましょう。

  1. まず、ホームディレクトリにいることを確認します。
cd ~
  1. 迷路用のディレクトリ構造を作成します。
mkdir -p maze/twisty/little/passages

このコマンドは、入れ子になったディレクトリ構造を作成します。コマンドの詳しい動作は今は気にしなくて構いません。ディレクトリの作成方法は、今後の実験で学びます。

  1. 迷路の中を移動します。
cd maze/twisty/little/passages
  1. 現在地を確認します。
pwd

次のように表示されます。

/home/labex/maze/twisty/little/passages

おめでとうございます。すべて同じように見える、曲がりくねった小道の迷路を移動できました。これは、初期のコンピューターゲームやハッカー文化に大きな影響を与えた、古典的なテキストアドベンチャーゲーム「Colossal Cave Adventure」への参照です。

  1. ホームディレクトリに戻ります。
cd ~

この実験は元の Colossal Cave ほど複雑ではありませんが、cd コマンドを使えば、どれほど複雑なディレクトリ構造でも移動できることが分かります。

まとめ

この実験では、Linux のファイルシステムを移動するための便利なツールである cd コマンドを確認しました。次の操作を学びました。

  1. pwd を使って現在地を確認する
  2. cd ~ を使ってホームディレクトリへ移動する
  3. 相対パスを使って特定のディレクトリへ移動する
  4. cd .. を使ってディレクトリ構造の上の階層へ移動する
  5. cd - を使って 2 つのディレクトリをすばやく切り替える
  6. 絶対パスを使って正確に移動する
  7. 迷路を作成して移動し、Linux のイースターエッグを楽しむ
  8. cd コマンドの追加オプションを理解する

cd コマンドには、特定の状況で役立つオプションがいくつかあります。

  • cd: 引数なしで実行すると、ホームディレクトリへ移動します。
  • cd /: ファイルシステム全体のルートディレクトリへ移動します。
  • cd $HOME: ホームディレクトリへ移動する別の方法です。

これらの方法を使うと、Linux のファイルシステムをより柔軟に移動できます。実際に試してみてください。

これで、Linux のファイルシステムを自在に移動するための基本スキルが身につきました。練習を重ねることが上達への近道です。これらのコマンドを使うほど、Linux の移動操作に慣れていきます。自由に探索してください。Linux では、cd ~ を使えばいつでもホームディレクトリに戻れます。Linux という都市の探索を楽しんでください。