2009-03-11 7 views
3

Ich weiß nicht, was passiert ist, aber in meinem Terminal unter Mac OSX 10.5 kann es meinen sudo-Befehl nicht mehr finden, oder finde den Befehl usw. Sie sind da, wenn ich/usr/bin/sudo oder/usr/bin/finde es funktioniert ...In Mac OSX 10.5 kann es meine Terminalbefehle sudo, find, usw. nicht finden

Meine .bash_login Datei sieht so aus: Export PATH = "/ usr/local bin /:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin $ PATH "

Meine Bash_profile Datei sieht wie folgt aus: export PATH ="/Library/Frameworks/Python. Framework/Versionen/Aktuell/bin: /Library/Python/2.5/site-packages/django_trunk/django/bin:/usr/local/mysql/bin:/usr/bin/sudo $ PATH "

Ich werde jetzt sagen, ich nicht wirklich weiß, was ich mit dem Terminal mache. Ich bin nur ein Anfänger, und ich muss etwas tun, damit die Umgebungsvariablen (so heißen sie?) Verloren gehen. Ich vermutete, dass ich nur sicherstellen muss, dass der/usr/bin/Pfad in meinen Bash-Dateien ist, aber sie sind, und es scheint nicht zu funktionieren. Bitte helfen Sie!

Wenn ich den/usr/bin/find -Befehl benutze, wird "Permission denied" angezeigt, obwohl ich bei Mac OSX als Systemadministrator angemeldet bin. Ich verstehe nicht.

Jede Hilfe wäre großartig. Vielen Dank - James

+0

Dies ist keine technische Support-Website. –

+0

Ich weiß das. Es ist Programmierungsfragen zu stellen. Das hat etwas mit meiner Programmierung zu tun, da ich versuche, Apache, PHP, Python und Django nativ auf meinem System zu installieren und Terminal richtig funktionieren zu lassen ... Andere Programmierer haben vielleicht dieses Problem und wissen, wie man es repariert. Ich hoffe :) –

+0

Im Allgemeinen, wenn Sie eine Änderung vornehmen und es Zeug bricht, wäre der erste Schritt, die Änderung rückgängig zu machen. –

Antwort

8

Es ist wie beide Ihrer PATH Exporte sieht sind malformed:

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin$PATH" 

Das Endbit es wird nicht funktionieren. Es sollte sein:

export PATH=/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin:$PATH 

Beachten Sie den Doppelpunkt vor '$ PATH'? Es ist wichtig;)

Auch die Anführungszeichen sind nicht notwendig.

Wenn dies nicht funktioniert, benötigen wir weitere Informationen. Es ist möglich, dass etwas anderes Ihren Pfad ändert, auch nachdem Ihre Shell-Konfigurationen geladen wurden.

Können Sie die Ergebnisse der Post:

$ echo $PATH 

Konfigurationsdateien ist nicht immer ein guter Indikator für die aktuellen Umgebungsvariablen, da sie von vielen Programmen und Dateien geändert wird, werden alle in Ihrem System. Um alle Ihre Umgebungsvariablen zu sehen, können Sie ausführen:

$ env 
+1

Doppelte Anführungszeichen können eine gute Idee auf MacOS X sein: Verzeichnisnamen enden oft mit Leerzeichen in ihnen (nicht unbedingt in PATH, aber ...). –

3

Dies sollte das Problem vollständig und dauerhaft beheben.

zuerst, exportieren Sie die Umgebungspfade, indem Sie den Befehl unten im Terminal verwenden.

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/b‌​in 

Jetzt haben Sie die gewünschten Befehle. (zB versuchen Sie ls. Sie werden sehen, der Befehl funktioniert). Aber das ist nur für die aktuelle Sitzung. Wenn Sie das Terminal schließen und ein neues öffnen, haben Sie das vorherige Problem.Um diese Änderung dauerhaft zu machen, unter Befehl verwenden,

zu Home-Verzeichnis gehen

cd ~ 

offen Bash_profile Datei in Nano-/vim (Ich verwende nano hier)

nano .bash_profile 

Dieser Wille Öffnen Sie den Nano-Editor. Fügen Sie in einer neuen Zeile Folgendes ein:

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:$PATH 

Presse 'control' + 'o' speichern (WriteOut) und 'Kontrolle' + 'x' nano zu beenden.

Alles fertig! Jetzt probiere die Befehle aus.