ITパスポート 2014年 秋期 問75
問題文
あるWebサーバにおいて、五つのディレクトリが図のような階層構造になっている。
このとき、ディレクトリBに格納されているHTML文書からディレクトリEに格納されているファイルimg.jpgを指定するものはどれか。ここで、ディレクトリ及びファイルの指定は、次の方法によるものとする。
〔ディレクトリ及びファイルの指定方法〕
(1)ファイルは、“ディレクトリ名/.../ディレクトリ名/ファイル名”のように、経路上のディレクトリを順に“/”で区切って並べた後に“/”とファイル名を指定する。
(2)カレントディレクトリは“.”で表す。
(3) 1階層上のディレクトリは“..”で表す。
(4)始まりが“/”のときは、左端にルートディレクトリが省略されているものとする。
(5)始まりが“/”、“.”、“..”のいずれでもないときは、左端にカレントディレクトリ配下であることを示す“./”が省略されているものとする。

選択肢
ア:../A/D/E/img.jpg
イ:../D/E/img.jpg(正解)
ウ:./A/D/E/img.jpg
エ:./D/E/img.jpg
🔒 解説は解答すると表示されます
問題タイトル +【ITパスポート 解説】
あるWebサーバのディレクトリ構造で、ディレクトリBにあるHTML文書からディレクトリEにあるファイルimg.jpgを指定するパスはどれか。
正解の理由
ディレクトリBからディレクトリEへ移動するには、まずBの一つ上の階層であるAへ移動し(親ディレクトリに上がることを
.. で表す)、そこから右側の枝に入ってD→Eと降りる必要があります。したがって親に上がる .. を先頭に置き、その後に D/E/img.jpg と続ければ目的のファイルを指せます。これが イ の ../D/E/img.jpg です。(補足:
.. は「親ディレクトリ」、. は「カレントディレクトリ(現在のディレクトリ)」を意味します)解法ステップ
- 現在地を確認:出発点はディレクトリB(HTMLが置かれている場所)。
- 目的地を確認:目的はディレクトリE内の img.jpg。
- ディレクトリ階層をたどる:
- B の親は A →
..で表す。 - A の下に D、その下に E がある →
D/Eと下る。
- B の親は A →
- ファイル名を最後に付ける →
../D/E/img.jpg。
短く言うと「B → 親(A)に上がる → A の D に移動 → E の img.jpg」を表現したのが イ です。
選択肢別の誤答解説
-
ア: ../A/D/E/img.jpg
誤り。..で B から上がると A に到達しますが、その直後にA/...と書くと「A の中に A がある」ことを意味してしまいます。つまり A/A/D/E のように二重に辿ることになり、存在しない経路になります。 -
ウ: ./A/D/E/img.jpg
誤り。先頭の./は現在のディレクトリ(B)を指します。./A/...は「B の下に A がある」と解釈されますが、A は B の子ではなく親なので間違いです。 -
エ: ./D/E/img.jpg
誤り。./D/...は「B の下に D がある」と見なしますが、D は B の兄弟(同じ親Aの配下)であり、まず親へ上がる必要があるため不正確です。
よくある誤解
-
「
../A/...は親に上がってからAに入るので正しい」
→ 親に上がった時点で既にAにいるため、さらにA/と書くと A の中の A を指定することになり過剰表現になります。 -
「先頭に
./がない場合はルート(A)だと思い込む」
→ 先頭に/がない限り、先頭なしのパスはカレントディレクトリ(現在地)配下とみなされます(問題文のルール(5))。つまりD/E/...は./D/E/...と同じ意味で、Bの配下を探します。
補足コラム
パス指定は道案内に似ています。自分のいる場所(カレント)を起点に「一つ上に行く」「その下に行く」を順に指示していくイメージです。Webページのリンクや画像指定でも同じ記法が使われます。実務では相対パス(今回のように
.. や . を使う)と絶対パス(先頭に / を付けてシステムルートやドメイン直下を示す)を使い分けます。簡単な視覚化(今回の構造):
A
├─ B
│ └─ C
└─ D
└─ E (img.jpg)
B から E へは矢印で「上へ(..)→ 右下へ(D/E)」
FAQ
Q1. 「
A1. 問題文のルール(4)では、先頭が
/D/E/img.jpg と書いたらどうなる?」A1. 問題文のルール(4)では、先頭が
/ の場合は左端にルートディレクトリが省略されているとあります。実際には先頭 / はシステム(またはサイト)のルートからの絶対パスを意味することが多く、今回の出題意図では正しくありません(出発点Bからの相対指定が求められているため)。Q2. 「C から E に行くパスは?」
A2. C の親は B、その親が A。C → B → A → D → E とするので
A2. C の親は B、その親が A。C → B → A → D → E とするので
../../D/E/img.jpg(.. を2回使う)になります。Q3. 「先頭の
A3. 必要ありません。書いても書かなくても同じ意味(カレント配下)です。ただし明示したい場合は書いても良いです。
./ は必ず書くべき?」A3. 必要ありません。書いても書かなくても同じ意味(カレント配下)です。ただし明示したい場合は書いても良いです。
関連キーワード: 相対パス、カレントディレクトリ、親ディレクトリ、パス表記、ディレクトリ構造、Webリンク

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

