Warum und wann setzt man unter Linux ein „./
“ vor einen Befehl auf dem Terminal?
Diese Erklärung ist vor allem für Linux-Einsteiger gedacht. Normalerweise startet man unter Linux Befehle am Terminal ganz einfach mit Ihrer Bezeichnung, um etwa Firefox am Terminal zu starten, nutzt man ganz einfach den Befehl:
firefox
Dieser einfache Befehl gelingt, weil die Shell durch ihre Umgebungsvariablen weiß, wo sie nach ausführbaren Dateien suchen muss. Wäre dies nicht so, müsste man den kompletten Pfad zur ausführbaren Datei angeben – etwa:
/usr/bin/firefox
Nun gibt es aber auch ausführbare Dateien die man sich aus dem Internet herunterlädt, dazu zählen auch Skripte die man selbst erstellt. Liegt eine solche ausführbare Datei nun in einem beliebigen Verzeichnis im Home-Verzeichnis – etwa ganz einfach unter „/home/nutzername/skripte/Dateiname“ liegt die Datei nicht dort, wo die Shell nach ausführbaren Dateien suchen würde. Würde ich nun in diesem Verzeichnis – also „/home/nutzername/skripte/“ den Befehl:
Dateiname
ausführen, würde das Terminal in den vorbestimmten Verzeichnissen nach dem Befehl „Dateiname“ suchen, ihn dort aber nicht finden. Damit die Shell versteht – hier in diesem Verzeichnis liegt diese Datei stellt man vor den Befehl die Zeichenkombination „./“ – also:
./Dateiname
Noch keine Reaktion