絶対パスと相対パスの違い
パスとは、パソコンの中に保存されているファイルやディレクトリ(フォルダ)の保存場所を示す経路のことです。
ファイルやディレクトは、次のような階層構造で管理されています。
この階層構造の中にある、目的のディレクトリやファイルまでの経路を示すものが「パス」であり、パスには「絶対パス」と「相対パス」があります。
絶対パスとは
絶対パスとは、最上位のディレクトリから目的のディレクトリやファイルまでの道筋を完全に記述する方法です。フルパスとも呼ばれています。
最上のディレクトリを「ルートディレクトリ」と呼び、「ルートディレクトリ」から目的のファイル(またはディレクトリ)までのパス(保存場所を示す経路)を示したものが「絶対パス」です。
例えば、上記の「test.csv」ファイルの絶対パスは「/home/test.csv」です。
UNIX系OSでは「ルートディレクトリ」を「/」で表現します。
「/home/test.csv」は「ルートディレクトリ」の中にある「home」ディレクトリの中にある「test.csv」というファイルを示した「絶対パス」です。
相対パスとは
相対パスとは、カレントディレクトリ(カレントフォルダ)を基準にして、目的のディレクトリ(フォルダ)やファイルまでの道筋を記述する方法です。
現在操作中(現在いる場所)のディレクトリのことを「カレントディレクトリ」と呼び、「カレントディレクトリ」から目的のファイル(またはディレクトリ)までのパス(保存場所を示す経路)を示したものが「相対パス」です。
例えば、上記のカレントディレクトリは、devフォルダであり、「test.csv」ファイルの相対パスは「../home/test.csv」です。
カレントディレクトリは省略可能ですが、明示したい場合は「.」で表し、一階層上位のディレクトリは「..」で表します。
「../home/test.csv」は、カレントディレクトリの一階層上のディレクトリの中にある「home」ディレクトリの中にある「test.txt」というファイルを示した「相対パス」です。