Perl開発者のためのLinux入門

cdコマンド - カレントディレクトリの変更

cdコマンドを使うと、カレントディレクトリを変更することができます。

cd ディレクトリ名

ディレクトリ名を相対パスで指定

cdコマンドで、「labo」というディレクトリにカレントディレクトリを変更するには次のコマンドを実行します。

cd labo

これは、現在のカレントディレクトリを起点として、カレントディレクトリの現在の階層にある「labo」ディレクトリを、カレントディレクトリとするという意味です。

これを、ディレクトリ名を相対パスで指定するといいます。

ディレクトリ名を絶対パスで指定

cdコマンドでディレクトリ名を絶対パスで指定することもできます。

「/usr/local/lib」というディレクトリに移動するには以下のコマンドを実行します。

cd /usr/local/lib

絶対パスは先頭が「/」で始まることが特徴です。cdコマンドは、先頭の「/」を見て、相対パスか絶対パスかを識別します。

カレントディレクトとは?

カレントディレクトリというのは、現在作業中のディレクトリのことです。Linuxでいうディレクトリというのは、Windowsのフォルダと同じ意味だと考えてください。

Linuxにログインしたときは、ホームディレクトリと呼ばれる場所が、カレントディレクトリとなります。

/home/kimoto

カレントディレクトリを表示するにはpwdコマンドが使えます。

pwd

今いるディレクトリってどこだっけなとなったときは、pwdコマンドで確認できます。

特殊なディレクトリ名

特殊なディレクトリ名として、次のディレクトリ名を覚えておきましょう。

現在のカレントディレクトリ - .

「.」は、現在のカレントディレクトリを指す特殊なディレクトリ名です。

cd .

これは、カレントディレクトリを現在のカレントディレクトリに変更するだけなので、何も起こりません。

でも、意味を覚えておいてください。cdコマンドでは特に意味がありませんが、意味を持つ場面があります。

親ディレクトリ - ..

「..」は、親ディレクトリを指す特殊なディレクトリ名です。

カレントディレクトリを変更して、一階層上の親ディレクトリに戻りたい場合に、頻繁に利用します。

cd ..

ホームディレクトリ - ~

「~」は、ホームディレクトリを指す特殊なディレクトリ名です。

cd ~

ユーザーが「kimoto」の場合は、ホームディレクトリは以下のように展開されます。

cd /home/kimoto

特殊なディレクトリ「.」「..」「~」については、実際は、cdコマンドが解釈しているわけではなく、シェルが解釈しているのですが、cdコマンドで使用する頻度が高いので、紹介しました。

cdコマンドのサンプル

ホームディレクトリにカレントディレクトリを変更して、そこにlaboディレクトリを作成して、laboディレクトリにカレントディレクトリを変更するサンプルです。

# ホームディレクトリにカレントディレクトリを変更
cd ~

# laboディレクトリを作成
mkdir labo

# laboにカレントディレクトリを変更
cd labo

# pwdコマンドで現在のカレントディレクトリをチェック
pwd

Perlゼミの環境では、以下のように表示されました。

/home/kimoto/labo