Ich bin neu in Unix und bei der Installation eines Programms für meine Dissertation muss ich mit dem PATH für die grundlegenden Unix-Befehle wie z ls
. Jedes Mal, wenn ich tippe ls
und den Verzeichnisnamen, für den ich die Dateien auflisten möchte, wird Folgendes angezeigt:
-bash: ls: No such file or directory
Was kann ich tun, um dies zu beheben? Jede Hilfe wird sehr sehr geschätzt!
bash
command-line
ls
path
Mariaa
quelle
quelle
Antworten:
Setzen Sie Ihren Pfad jetzt zurück (dh vor jeder Art von Abmeldung) mit:
Ihr vollständiger Pfad wird nicht wiederhergestellt, aber die grundlegenden Dienstprogramme sind wieder verfügbar.
Hier ist ein Beispiel für die Art der Dinge, die passieren:
Sie hatten eine PATH-Variable (beim Lesen als $ PATH bezeichnet)
Etwas wie:
Sie haben versucht, etwas hinzuzufügen, aber Sie haben es versehentlich verwendet
anstatt
und das Ergebnis war, dass dein Weg wurde
und dann funktionieren alle Dienstprogramme wie ls und sed nicht
Sie können den minimalen Satz durch Ausführen korrigieren
Dies ist besonders nützlich, wenn eine Login- Punktdatei Ihren PATH durcheinander bringt. Überprüfen Sie Ihre .bashrc- und / oder .bash_profile-Dateien auf PATH-Änderungen.
Wie Greg sagt, können Sie sich auch einfach abmelden (oder sicherer, ein neues Fenster öffnen, falls das Öffnen eines neuen Fensters nicht funktioniert!) Und dann $ PATH aus einem neuen Fenster wiedergeben.
Das gleiche passiert, wenn Sie
path=
keine Werte verwenden. Es "löscht" Ihren aktuellen Pfad und verursacht diese Probleme. Starker TextWas , warum , wenn Sie diese Probleme cd funktioniert und ls haben nicht funktioniert:
cd
ist ein "eingebauter" Befehl, der Ihren PATH nicht benötigt, um das Programm zu findenls
ist ein Programm und muss PATH verwenden, um herauszufinden, wo es sich befindet.Sie können dies sehen mit:
Kein Fehler bedeutet, dass der Befehl integriert ist
Vor dem Weitergehen (oder Abmelden) ...
Stellen Sie sicher, dass Sie alle Änderungen testen ( insbesondere diejenigen an .bashrc, .profile usw., die PATH-Einstellungsbefehle ausführen), indem Sie ein neues Fenster öffnen oder source ~ / .bash_profile ausführen, um es auszuführen. Es wird auch empfohlen, das Fenster und den Editor (wenn Sie die Datei .bash_profile ändern) geöffnet zu lassen, falls Ihre Änderungen nicht funktionieren, und Sie daran zu hindern, neue Fenster zum Bearbeiten der Datei zu öffnen. Sie können jedoch weiterhin TextEdit oder einen anderen einfachen Editor verwenden, um die Datei zu ändern (z. B. ohne Befehlszeile und vi). Achten Sie darauf, NICHT neu zu starten, wenn Ihre Shell defekt ist oder Sie sich möglicherweise nicht einmal anmelden können. und das ist wirklich sehr, sehr schlecht (ohne dass ein anderer Account
su
von dir abgespritzt wird). Ist mir passiert!Mein 'Extra Account'-Fix war damals aber auch ein Lebensretter und für alle sehr zu empfehlen (mach es jetzt!)
quelle
source ~/.bash_profile
es ausführen. Es wird auch empfohlen, das Fenster und den Editor (in dem Sie die .bash_profile-Datei ändern) geöffnet zu lassen, falls Ihre Änderung nicht funktioniert, und Sie daran zu hindern, neue Fenster zum Bearbeiten der Datei zu öffnen. Sie können jedoch weiterhin TextEdit oder einen anderen einfachen Editor verwenden, um die Datei zu ändern.Die Änderungen, die Sie vorgenommen haben,
PATH
sind wahrscheinlich vorübergehend. Schließen Sie die Shell, in der Sie sich befinden,exit
und öffnen Sie sie erneut.Wenn Sie eine Datei bearbeitet haben, in der die
PATH
für neu geöffnete Shells festgelegt sind, geben Sie den vollständigen Pfad zu den Befehlen an, um die Änderungen zu korrigieren (z. B./usr/bin/vim
).quelle
/usr/bin
oder irgendeinbin
Verzeichnis in Ihrem Pfad? @ Mariaa