ITパスポート試験 ITパスポート 2014年 (平成26年 秋期)75: あるWebサーバにおいて,五つのディレクトリが図のような階層構造になっている。このとき,ディレクトリBに格納されているHTML文書からディレクトリEに格納されて

ITパスポート 2014年 (平成26年 秋期)
Q 7575 / 100
あるWebサーバにおいて,五つのディレクトリが図のような階層構造になっている。このとき,ディレクトリBに格納されているHTML文書からディレクトリEに格納されているファイルimg.jpgを指定するものはどれか。ここで,ディレクトリ及びファイルの指定は,次の方法によるものとする。 [ディレクトリ及びファイルの指定方法] (1) ファイルは,"ディレクトリ名/…/ディレクトリ名/ファイル名"のように,経路上のディレクトリを順に"/"で区切って並べた後に"/"とファイル名を指定する。 (2) カレントディレクトリは"."で表す。 (3) 1階層上のディレクトリは".."で表す。 (4) 始まりが"/"のときは,左端にルートディレクトリが省略されているものとする。 (5) 始まりが"/",".",".."のいずれでもないときは,左端にカレントディレクトリ配下であることを示す"./"が省略されているものとする。 [階層構造: A の下に B と D。B の下に C。D の下に E。]
この問の正解率:63.51%(992件)
この問題の本文・選択肢・正解・解説(展開)

問題本文

あるWebサーバにおいて,五つのディレクトリが図のような階層構造になっている。このとき,ディレクトリBに格納されているHTML文書からディレクトリEに格納されているファイルimg.jpgを指定するものはどれか。ここで,ディレクトリ及びファイルの指定は,次の方法によるものとする。 [ディレクトリ及びファイルの指定方法] (1) ファイルは,"ディレクトリ名/…/ディレクトリ名/ファイル名"のように,経路上のディレクトリを順に"/"で区切って並べた後に"/"とファイル名を指定する。 (2) カレントディレクトリは"."で表す。 (3) 1階層上のディレクトリは".."で表す。 (4) 始まりが"/"のときは,左端にルートディレクトリが省略されているものとする。 (5) 始まりが"/",".",".."のいずれでもないときは,左端にカレントディレクトリ配下であることを示す"./"が省略されているものとする。 [階層構造: A の下に B と D。B の下に C。D の下に E。]

選択肢

  • .../A/D/E/img.jpg
  • .../D/E/img.jpg
  • ../A/D/E/img.jpg
  • ../D/E/img.jpg

正解

. ../D/E/img.jpg

解説

ディレクトリ階層は A の下に B と D, B の下に C, D の下に E. カレントディレクトリ B から E にある img.jpg を指定するには,Bの1階層上(A)に上がってからDに入りEに入る必要がある. 相対パスで書くと「../D/E/img.jpg」(.. でA に上がり,DとEを下る)が正しい. ../A/.. と書くとBに戻ってしまい不適切,./A/... は始まりが./なのでカレントBの下にAがある前提となり階層と合わない. 相対パスの「..」=1階層上,「.」=カレントの意味を踏まえれば一意に決まる典型問題である.

選択肢ごとの解説

  • .誤り. 「../A/D/E/img.jpg」は,..でBの1階層上(A)に上がった後,さらにAの下に入ろうとしているが,..で既にAにいるためここからAは指定不要. 結果として無効な経路を辿ることになり,目的のEに到達できない. パスの最初の..でA階層に到達している点を意識する必要がある.
  • .正解. 「../D/E/img.jpg」が正しい. カレントBから..でA階層に上がり,そこからDディレクトリに入り,さらにEディレクトリに入ってimg.jpgを指定する経路となる. 階層構造(AB,D / DE)を踏まえれば,Bから見たEへの最短相対パスはまさにこの形となる. 相対パスの基本.
  • .誤り. 「./A/D/E/img.jpg」は,./で始まるためカレントディレクトリBの下にAがある前提となるが,実際にはAはBの上位ディレクトリ. 階層構造と矛盾するため不適切である. ./で始まる相対パスは「Bの下を辿る」意味になるが,Aは下位ではないので経路として成立しない.
  • .誤り. 「./D/E/img.jpg」は,カレントディレクトリBの下にDがある前提のパスだが,実際にはDはBと同階層(共通の親Aの下)に位置するため不適切. Bの下にはCしかないので,./Dという経路は存在せずパスとして無効になる. 階層構造を辿る方向を取り違えた誤答となる.

ITパスポート 2014年 (平成26年 秋期)過去問一覧へ戻る・問75