パスの種類


パス

パスとはディレクトリやファイルの場所を示す文字列のことです。
ディレクトリは階層ごとに/(スラッシュ)で区切ります。パスの指定方法は、
絶対パス相対パス の2つがあります。

FinderなどのGUIとパスで示すことの違いは、
地図を元に場所を指差すのか、その場所の住所を伝えるのか、という違いと似ていますね。

次は、 絶対パス相対パス について説明します。

絶対パス

絶対パスは ルートディレクトリから指定するパス です。
Macの全ディレクトリにおけるルートディレクトリは /(スラッシュ)です。
全てのディレクトリやファイルはここから辿っていきます。
そのため、絶対パスで指定するときにはパスの一番最初に/(スラッシュ)を指定します。

例:絶対パス
/Users/ユーザ名/Desktop

ここで、一番始めの/(スラッシュ)はルートディレクトリを指し、2番目以降の/は階層の区切りを表している点を混同しないように注意して下さい。

また、/Users/ユーザ名はホームディレクトリであり、~と表すことができるため、ホームディレクトリより下層にあるディレクトリのパスは以下のような絶対パスで示すこともできます。

例:絶対パス
~/Desktop

絶対パスは、どのディレクトリで作業していても指定した場所に移動できます。しかし、パスをルートディレクトリからたどって指定する必要があるため、記述が長くなってしまう場合もあります。

相対パス

相対パスは カレントディレクトリから指定するパス です。
ルートディレクトリから指定しないため、パスの始めに/(スラッシュ)をつけてはいけません。

カレントディレクトリ直下のディレクトリやファイルであれば、どのようなディレクトリ階層にあるのか指定することなく簡単にパスの指定ができます。

相対パス
# カレントディレクトリがホームディレクトリの場合にデスクトップの場所を指定する
Desktop

# カレントディレクトリがホームディレクトリの場合にデスクトップにあるファイルの場所を指定する
Desktop/メモ.txt

相対パスは、記述をシンプルにパスの指定が可能となるメリットがあります。しかし、カレントディレクトリがどこにあるのかによって、指定するパスを変更する必要があります。

これらのパスは、階層を示す方法として必要な知識ですが、ターミナルでは
パスのみだと何も処理を命令することができません。
パスはPCへの命令と合わせることで使用します。

まとめ

絶対パスは、ルートディレクトリから指定するパスのこと。
相対パスは 、カレントディレクトリから指定するパスのこと。

例えるなら、誰かに道案内をするときに「東京都〇〇区△△市...」と直接住所を伝えるのが絶対パス。相手の居る現在地から考え「そこからまっすぐ進んで2つ先の角を左に...」のように伝えるのが相対パスであるといえます。

以上。