PATH geändert, jetzt bekomme ich für alles "Befehl nicht gefunden"


26

Amazon Linux Server, verbunden mit SSH:

Ich habe versucht, den PATH für den Apache-Benutzer zu ändern, indem ich einige Änderungen in / etc / environment ( PATH=$PATH:/opt/openoffice4/program) und / etc / sysconfig / httpd ( export PATH = ${PATH:$PATH:}/opt/openoffice4/program) vorgenommen habe.

Dann habe ich neu gestartet.

Jetzt kann ich nichts machen, ls -lführt auch dazu-bash: ls: command not found

Was kann ich tun, um die Kontrolle wiederzugewinnen?


4
Können Sie Befehle direkt ausführen? Zum Beispiel /bin/ls?
DavidPostill

Ja, ich kann / bin / ls
ausführen

13
Dann sollten Sie in der Lage sein, /bin/vidie Dateien auszuführen und zu reparieren, bei denen Sie den Pfad gebrochen haben.
DavidPostill

Antworten:


49

Was kann ich tun, um die Kontrolle wiederzugewinnen?

Führen /bin/viSie die an /etc/environmentund vorgenommenen Änderungen aus und setzen Sie sie zurück /etc/sysconfig/httpd.


32

Sie können Ihre PATHohne Editor einstellen . Geben Sie dies einfach in die Shell ein:

export PATH=/usr/local/bin:/usr/bin:/bin:$HOME/bin

1
Und entfernen Sie die Leerzeichen! PATH=somethingNICHTPATH = something
Waltinator

4
Das sollte zitiert werden, sonst $HOMEwird es zu Globbing und Wortspaltung kommen. IOW, es wird kaputt gehen, wenn $HOMEein Leerzeichen (plausibel) oder ein Glob-Zeichen (weniger wahrscheinlich) enthalten ist.
Kevin

@ Kevin Ich habe es versucht und die Leerzeichen und Globs wurden nur kopiert. (Das Schreiben export PATH=/path to home/binfunktioniert natürlich nicht.)
Neil

2
@ Kevin So verhält es sich bei streng konformen Implementierungen, aber zumindest gibt bash exportbenutzerdefinierte Syntaxregeln an, bei denen dieses Problem nicht auftritt . (Benutzerdefinierte Syntaxregeln waren bereits aus anderen Gründen erforderlich, z export array=(1 2 3). B. um dies zuzulassen .)
hvd

-1

Vielleicht würde das helfen:

export PATH=/usr/local/bin:/usr/bin:/bin:$HOME/bin

Der Befehl 'export' wird in / usr / bin nicht verwendet, deshalb funktioniert er immer noch!


1
Diese Antwort wurde bereits vorgeschlagen.
Magnet
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.