vorige Präsentation: Kommandozeile | zurück zum Buch-Kapitel [esc] | Nächste Präsentation Shellscript
Ich tippe in eine Kommandozeile createdb hoteldb ein, und erwarte, dass ein bestimmtes Programm gestartet wird. In diesem Beispiel gehört das Programm createdb zur Datenbank Postgres, und ich verwende es um eine neue Datenbank namens hoteldb zu erstellen.
Statt dessen erhalte ich eine Fehlermeldung:

Wie geht die Kommandozeile vor, wenn sie ein Programm createdb starten soll?
Dazu wird die Umgebungsvariable PATH gelesen und analysiert. Diese Variable enthält einen langen String, hier ein paar Beispiele:
/Users/bjelline/.composer/vendor/bin/:/opt/homebrew/opt/postgresql@17/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/usr/local/share/dotnet:/Users/bjelline/.cargo/bin:/Applications/iTerm.app/Contents/Resources/utilities:/Users/bjelline/bin:/Applications/Visual Studio Code.app/Contents/Resources/app/bin/
Dieses Beispiel von einem Mac Computer enthält viele Pfad-Angaben, getrennt durch Doppelpunkte.
C:\Windows\system32;C:\Windows;C:\Program Files\Git\cmd;;C:\Program Files\dotnet\;C:\ProgramData\chocolatey\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\php;C:\Users\bjelline\AppData\Local\Programs\Microsoft VS Code\bin
Dieses Beispiel von einem Windows Computer enthält viele Pfad-Angaben, getrennt durch Semikolons.
Auf beiden Systemen geht die Kommandozeile auf der Suche nach dem Programm createdb gleich vor: sie sucht im ersten angegebenen Ordner nach ausführbaren Dateien mit den Namen createdb (auf Windows auch nach createdb.exe oder createdb.bat). Falls sie im ersten Ordner nichts findet geht die Suche im 2.Ordner weiter.
Falls ein passendes Programm gefunden wird, wird es gestartet.
Falls nicht wird eine Fehlermeldung ausgegeben.
Hier ein Beispiel auf Windows 11:

createdb.exe im Ordner bin gefunden.bin herausfinden. Dazu klicke ich in die Adresszeile, dann wird der Pfad angezeigt. Mit STRG-C kopiere ich den PfadPath klicken und dann auf den bearbeitet-Buttoncreatedb nun funktionierenDazu muss man wissen welche Shell man benutzt. das findet man mit dem Befehl ps heraus, da werden die laufenden Prozesse angezeigt. Auf Mac is die shell wahrscheinlich bash oder zsh, auf linux gibt es noch mehr optionen.
Jede Shell hat eine eigene Datei mit erstem Buchstaben . und letzten Buchstaben rc. Also z.B. .bashrc oder .zshrc u.s.w.
Die Datei wird beim Start der Shell ausgeführt. Hier fügt man einen Befehl ein um den Path zu ändern.
.zshrc ein: export PATH="/Applications/Visual Studio Code.app/Contents/Resources/app/bin/:$PATH"vorige Präsentation: Kommandozeile | zurück zum Buch-Kapitel [esc] | Nächste Präsentation Shellscript
/
#