Ein Pfadname (auch Pfad) ist eine Zeichenfolge, die eine Datei, ein Verzeichnis, oder je nach Plattform auch andere Ressourcen auf einem Computersystem, zum Beispiel Gerätedateien unter Unix, bezeichnet.
Aufbau
Je nach Betriebssystem besteht ein Pfadname aus folgenden Elementen:
- einer Laufwerks- oder Datenträgerbezeichnung
- einer Liste von Verzeichnissen bzw. (Unter-)Verzeichnissen
- einem Dateinamen
Fast alle modernen Betriebssysteme sind darauf ausgelegt, Daten (und damit Dateien und Verzeichnisse) auf mehreren physikalischen Datenträgern zu verwalten. Bei der Adressierung der Daten werden unterschiedliche Wege beschritten:
- Unter Windows beispielsweise wird einem Pfad ein Kennbuchstabe für das entsprechende Laufwerk, in dem sich der Datenträger befindet, vorangestellt.
- Beispiel für einen Pfadnamen unter Windows:
C:\privat\testdata\beispiel.txt
- Hier bezeichnet
C
das Laufwerk, auf dem die Datei liegt. In der obersten Ebene des Dateibaumes auf dieser Festplatte gibt es ein Verzeichnisprivat
, darunter eines mit Namentestdata
, und dort ist die Dateibeispiel.txt
zu finden.
- Unter Unix und Unix-Derivaten (z. B. Linux, NetBSD) gibt es ein „Wurzelverzeichnis“ (root directory), von dem ausgehend rein verzeichnisorientiert adressiert wird. Das Wurzelverzeichnis liegt in der Regel auf dem Datenträger, von dem der Systemstart erfolgt. Das Betriebssystem unterstützt die Einbindung der weiteren verfügbaren Datenträger dann durch Verwaltung von Einhängepunkten, englisch mount points.
- Beispiel für einen Dateinamen unter Unix:
/home/benutzer/beispieldatei
- Hier gibt es im Wurzelverzeichnis ein Verzeichnis
home
, darunterbenutzer
, und dort liegtbeispieldatei
.
- Aus der Unix-Pfadangabe alleine ist nicht ersichtlich, auf welchem physikalischen Datenträger
beispieldatei
liegt.
Absolute und relative Pfadnamen
Aus Betriebssystemsicht ist ein Pfadname nur unmissverständlich, wenn er wie oben beschrieben vollständig angegeben wird. Um Bedienung und Programmentwicklung zu vereinfachen ist es auf den meisten Systemen aber möglich, mit sogenannten relativen Pfadnamen zu arbeiten. Dabei werden einzelne Komponenten eines Pfadnamens weggelassen, z. B. die Laufwerksangabe oder ein Teil der vorangestellten Verzeichnisliste.
Beispiele für relative Pfadnamen:
- Windows:
subdir\testfile
oder.\autoexec.bat
oder..\daten\tabelle1.xls
- Unix:
../lib/libXYZ.a
Als Bezugspunkte für relative Pfadnamen wird seitens des Betriebssystems für jedes laufende Programm das aktuelle Laufwerk (nur Windows/Apple) sowie das aktuelle Verzeichnis verwaltet. Unvollständige, „relative“ Pfadangaben werden dann ausgehend von den aktuellen Werten interpretiert.
Beispiel (Windows):
- Aktuelles Laufwerk ist
C:
- Aktuelles Verzeichnis ist
\privat\texte
- Ein Zugriff auf den relativen Pfad
..\daten\tabelle1.xls
wird dann ausgehend vonC:\privat\texte
interpretiert alsC:\privat\texte\..\daten\tabelle1.xls
. Die Zeichenfolge..
bedeutet einen Wechsel ins übergeordnete Verzeichnis. Damit lautet der aufgelöste, vereinfachte Pfadname dannC:\privat\daten\tabelle1.xls
. Ebenso kann man in diesem Beispiel mit.\text1.txt
den PfadC:\privat\texte\text1.txt
aufrufen, da.
immer für das aktuelle Verzeichnis steht.
- Anstelle des Laufwerksbuchstabens ist es heute auch üblich geworden, die Namen im UNC-Format anzugeben und anstelle des Laufwerksbuchstabens auch in Windows-Systemen den Servernamen anzugeben. Siehe auch Uniform Naming Convention.
Standardpfad
Je nach Art und Zweck der zu speichernden Dateien erfolgt ihre Ablage standardmäßig an bestimmten Stellen innerhalb hierarchisch strukturierter Verzeichnisbäume. Siehe beispielsweise Initialisierungsdatei#Speicherort.