相対パスと絶対パス
パスについて覚えよう
製作者:yuki
絶対パス
例として/etc/apache2/
「/etc/apache2/」の/が前にあるとルート一番上から見たパスとなる
めんどうなら「/」が一番上の階層のマーク(名前でも)だと覚えてしまえ。
相対パス
例としてbin/php.load/
先程の絶対パスの/が前に付かない
~2つの違い~
自分が「/usr/home/GOD」にいるとしよう
ちなみに、GODのフォルダーの中は、「watanabe」「is」「神」のフォルダーしかないとする
ルートからは「usr」「etc」「var」のフォルダーしかないとする
まずは、以下の例を見ること!
例:なぁGODに居るんだけどさ、watanabeの中のcash.txtが見たいよう...。
絶対パスで実行
・誤り ⇒ /watanabe/cash.txt → 理由:なんでって、ルートには、「usr」「etc」「var」しかないだろ?「watanabe」どこにあるんだよ?ん?パラレルワールドか?
・正解 ⇒ /usr/home/GOD/watanebe/cash.txt → ルートからちゃんと道が見える!!これで、よしっ!
相対パスで実行
・誤り ⇒ usr/home/GOD/watanebe/cash.txt → 理由:なんでって、「GOD」には、「watanabe」「is」「神」しかないだろ?「usr」どこにあるんだよ?ん?お花畑か?
・正解 ⇒ watanabe/cash.txt → watanabeフォルダーがある!!じゃあ、中見ておkっ!!
使い分け
絶対パス
例えば、「watanabe」フォルダーから、ルートの「etc」に行きたい時、
相対パスでやると、../../etc/って長くなる。(../は1つ上に登る)
こういうときは絶対パスで書くと /etc/ だけで済むからいいんだよなぁ。
相対パス
例えば、「watanabe」フォルダーから、直下の「神」に行きたい時、
絶対パスでやると、/usr/home/GOD/watanebe/神/って長くなる。
こういうときは相対パスで書くと 神/ だけで済むからいいんだよなぁ。
まとめ
混乱するなら、フォルダーの下にある(フォルダーの1つ上にあるファイルでも)なら相対パス
フォルダーが直下になくて、いちいち上に戻ったり、メッチャクチャ離れている階層にあるときは、絶対パス使え...。
ただし、絶対パスは、フォルダーの位置を知らないと実行できないから面倒くさいよ、ぴえん