LinuxOSでディレクトリを移動するcdコマンドの使い方と移動方法のバリエーション

LinuxでもWindowsでも使われるcdコマンドの基本的な使い方と、ディレクトリの移動を簡易化する方法を解説します。



cdコマンドの基本的な使い方

コマンド「cd」は「Change directory」(チェンジ ディレクトリ)の略で、ディレクトリを移動するコマンドです。

> cd (ディレクトリ名)

cdコマンドのオプション

cdコマンドでは、下記のオプションが使用できます。

cdコマンドの「-L」オプション

移動先のディレクトリがシンボリックリンクだった場合、シンボリックリンクに移動します。

cdコマンドの「-P」オプション

移動先がシンボリックリンクだったらシンボリックリンクのリンク先である実体のディレクトリへ移動します。

正常に移動先へ移動できたか確認する「pwd」コマンド

cdコマンドで移動した後、正常に移動先へ移動できたか確認するコマンドは「pwd」です。「pwd」は、現在自分の居るディレクトリ名を表示するコマンドです。

下記のコマンド実行例では、現在は「/home/user1」というディレクトリに居ることを表示した結果です。

> pwd
/home/user1

cdコマンドの便利な使い方

cdコマンドでは、移動先のディレクトリを指定しますが、長いディレクトリ名であると入力も不便に感じるので、素早くディレクトリを移動するための便利な使い方を紹介します。

ディレクトリ名を指定して移動

cdコマンドの基本的な使い方ですが、移動先のディレクトリを入力して移動する方法です。

> cd /home/user1

ログインしているユーザのホームディレクトリへ移動

LinuxOSでは、複数のユーザを登録可能で、登録したユーザには「ホームディレクトリ」というそのユーザ専用のディレクトリが与えられます。

ホームディレクトリへはディレクトリ名を入力しなくとも、下記のコマンドで移動できます。

> cd

または

> cd ~

※「 ~ 」は「チルダ」と読む。[Shift]キーを押しながら「へ」キーを押すと入力できる。

ホームディレクトリ配下にあるディレクトリへ移動

cdコマンドでホームディレクトリへ移動するのは「 ~ 」で可能だが、ホームディレクトリ配下のディレクトリへ移動する場合でも「 ~ 」が利用できます。

下記の事例は、ホームディレクトリ配下にある「/data/log」へ移動する事例です。

もし、フルパス(ルートからのディレクトリ)でcdコマンドを実行する場合は下記の通りです。

> cd /home/user1/data/log
> pwd
/home/user1/data/log

user1のホームディレクトリが「/home/user1」であるなら、下記のコマンドで「/home/user1」を省略して上記と同じ移動が可能です。

> cd ~/data/log
> pwd
/home/user1/data/log

ディレクトリの1つ上の階層へ移動

現在居るディレクトリから1つ上のディレクトリへ移動する場合、「ひとつ上」を示す「..」(ピリオドを2つ)で移動できます。

> cd ..

ディレクトリの2つ上の階層へ移動

現在居るディレクトリから2つ上のディレクトリへ移動する場合、「ひとつ上」を示す「..」(ピリオドを2つ)を「/」でつなぐことで移動できます。

3つ上の階層なら、下記コマンドへさらに「/..」を加えることで実現可能です。

> cd ../..

ディレクトリの1つ上の階層にある別のディレクトリへ移動

1つ上の階層にある別のディレクトリへ移動する場合、ディレクトリ名を全て入力する必要は無く、先に解説した「..」で「1つ上の階層」を示すことで代替できます。

> cd ../logfile/data

直前まで居たディレクトリへ移動

例えば、別のディレクトリへ移動したが、元のディレクトリへ戻りたい場合、「~-」(チルダとハイフン)で元のディレクトリ名を代替できます。

> cd ~-

移動先がシンボリックリンクのディレクトリであった場合の移動方法

移動先のディレクトリが、シンボリックリンク(Windowsで言うショートカットのようなもの)である場合、オプションである「-L」か「-P」の何れかを付けることで、移動先を変えることができます。

シンボリックリンクのディレクトリへ移動する場合

「/home/linkdir」というディレクトリが、「/usr/linkdir」というディレクトリのシンボリックリンクであった場合、オプションに「-L」を付けると、シンボリックリンクである「/home/linkdir」へ移動できます。

> cd -L /home/linkdir
> pwd
/home/linkdir

シンボリックリンクのリンク元である実体側のディレクトリへ移動する場合

前述の「-L」オプションとは逆で、「-P」を付けると、シンボリックリンクの実体である「/usr/linkdir」へ移動できます。

> cd -P /home/linkdir
> pwd
/usr/linkdir