ディレクトリとファイルには必ずパスが存在します。
今回はそんなパスについて理解を深めましょう。
パス (Path) の概念
ディレクトリまたはファイルの存在する場所を指し示す文字列です。
全てのディレクトリとファイルは必ず1つのパスを所有し、同一のパスを共有することはありません。
ここでは解説しませんが、リンクという仕組みを使うとパスを増やせます。
興味ある人はシンボリックリンクとか調べてみてください。
区切り文字
ディレクトリやファイルの区切り文字はバックスラッシュまたはスラッシュが利用されます。
なお、最上位のドライブ文字と:(コロン)に関しては、そういうものと思ってください。
先生! どう見ても円マークです。
それはフォントの問題だよ。何を思ったのか円マークとバックスラッシュは同じ文字コードが採用されてるんだ。
だから利用するフォントによって円マークだったりバックスラッシュで表示されるんだね。
なにそれ迷惑。どっちが正しいんですか?
バックスラッシュと聞いたことがある(適当)。
絶対パス (absolute path)
ルートディレクトリから目的のディレクトリまたはファイルまでを指し示すパスで、別名でフルパスと呼ばれます。
相対パス (relative path)
ある場所を起点に目的のディレクトリまたはファイルを指し示す場合に利用するパスです。
メリット・デメリット
先に言ってしまうと絶対パスのデメリットは、どこかのパスが欠けた時点で成立しないことです。
例として、上位のディレクトリの名前を変更するだけでパスの関係性が崩壊します。
対して相対パスは自身を基準に考えるため、関係ない上位のパスが変化しようと対象を指し示せるのです。
じゃあ、絶対パスが不要かと言われると、そんなことはなく、主にWebサイトで利用されます。
例えばhttps://www.google.com/を指そうとしましょう。これ相対パスで指せますか?
無理ですね。
相対パスは基準になるパスから参照できないと駄目なんだ。
ネットワーク上の別PCを指すとかでも同じことが言えるね。
特殊なパス
特殊なパスとして、カレントディレクトリを指し示すパスの./(または.\)と、1つ上のディレクトリを指し示す../(または..\)があります。
これはコマンドベースで処理を行う場合に頻繁に利用するため、今のうちに覚えておくと便利だと思います。
Tips./(または.\)でカレントディレクトリ、../(または..\)で1つ上のディレクトリを指し示すことができる。
あとがき
何を思って同じ文字コードを採用したのか100万回は問い詰めたい。
◆ コンピュータサイエンスに関する学習コンテンツ
この記事は参考になりましたか?
コメント