FE EXAM

相対パス(現在地からの経路)

現在いるディレクトリ(カレント)を起点として目的のファイルまでの経路を示す指定方法。

INTERACTIVE VISUALIZATION
カレント
経路
目的
フェーズ
idle
今いる深さ
depth 2
組み立て中の相対パス
シナリオ
ステップ1 / 5
STEP 1/5カレントディレクトリを確認する相対パスは、いま自分が作業している場所「カレントディレクトリ(=現在地)」を起点にして道のりを書きます。今回は src というディレクトリにいるとします。ここから images の中にある logo.png を指定するのが目標です。
📁 project/📁 src/カレント(.)📁 images/📄 logo.png目的
相対パスの組み立て
../    = 1つ上の親ディレクトリへ上がる
images/ = サブディレクトリ名を書いて下りる
現在の相対パス:(まだ無し)
解説

📌
相対パスとは

📁 project/📁 src/(現在地)📁 images/../images

相対パスとは、いま自分がいるディレクトリ(カレント=現在地)を起点にして、目的のファイルまでの道のりを書く指定方法です。パス(path)とは「ファイルまでの道順」のことです。

身近な例で考えると、道を聞かれたときに「ここから2軒となりの角を曲がって…」今いる場所を基準に説明するのと同じです。住所をフルで書く必要がなく、近い場所ほど短く書けるのが特徴です。

上のツールで▶ボタンを押すと、現在地 src を起点に「../」で親へ上がり、images へ下りて目的ファイルへ到達する経路が1ステップずつ組み立てられていく流れを確認できます。

🔀
./と../の意味

親 dir現在地../ で上がる. = 現在地

相対パスでは、2つの特別な記号を組み合わせて道順を表します。


「.」(ドット1つ):今いる現在地そのもの。「./file」は現在地の中にある file を表します
「..」(ドット2つ)1つ上の親。「../」で1段上がります
「../../dir」:「..」を重ねると2つ上まで上がってから dir へ下りられます

./memo.txt   → 現在地の memo.txt
../images/a.png → 1つ上の images の a.png
../../lib/x.js → 2つ上の lib の x.js

上がるときは「..」、下りるときはディレクトリ名を書く、と覚えると分かりやすいです。上のツールで「../」が親へ、ディレクトリ名が下りる動きに対応しているのを確認できます。

⚖️
絶対パスとの使い分け

パスの書き方にはもう1つ絶対パスがあります。絶対パスはファイルシステムの一番上「/」(ルート)を起点に、フルの道順を書く方法です。同じファイルでも、起点が違えば書き方が変わります。

# 現在地が /project/src のとき
相対:../images/logo.png
絶対:/project/images/logo.png

項目相対パス絶対パス
起点カレント(現在地)ルート「/」
長さ近い場所は短い常にフルで長い
移動・配置換え位置関係が同じなら強いどこから実行しても確実

使い分けの目安は、相対パスは近い場所を短く書きたいとき・フォルダごと移動しても壊れにくくしたいとき絶対パスはどこから実行しても確実に同じファイルを指したいときです。相対パスは現在地が変わると指す先も変わる点に注意してください。

練習問題

🎯
基本情報技術者 練習問題

Q1.相対パスの説明として最も適切なものはどれか。
A.ファイルシステムのルートを起点に書く経路
B.現在いるディレクトリ(カレント)を起点に書く経路
C.ファイルの大きさを表す値
D.ホームディレクトリを必ず起点とする経路
Q2.カレントが /home/taro/src のとき、相対パス ../images/logo.png が指すファイルはどれか。
A./home/taro/src/images/logo.png
B./home/taro/images/logo.png
C./home/images/logo.png
D./images/logo.png
Q3.「..」(ドット2つ)が表すものとして正しいものはどれか。
A.今いるカレントディレクトリそのもの
B.1つ下のサブディレクトリ
C.1つ上の親ディレクトリ
D.ファイルシステムのルート

関連コンテンツ