.profil nicht geladen (osx lion)

11

Nach der Installation der Mac-Ports sieht mein .profile folgendermaßen aus:

# MacPorts Installer-Zusatz am 2011-12-04_at_20: 48: 26: Hinzufügen einer geeigneten PATH-Variablen zur Verwendung mit MacPorts.

export PATH = / opt / local / bin: / opt / local / sbin: $ PATH

# Die Anpassung Ihrer PATH-Umgebungsvariablen für die Verwendung mit MacPorts ist abgeschlossen.

Aber aus irgendeinem Grund wird beim Öffnen des Terminals oder beim Remote-Herstellen einer Verbindung zum Server (ssh) das .profile nicht geladen, sodass ich keine Macports verwenden kann (es sei denn, ich gehe natürlich zum Macports-Ordner).

Wie kann ich .profile aktivieren?

Erik
quelle

Antworten:

20

Von man bash(vorausgesetzt, es ist Ihre Shell, Typ echo $0oder echo $SHELLan der Eingabeaufforderung, um dies herauszufinden):

Wenn bash als interaktive Anmeldeshell aufgerufen wird, [...] sucht es in dieser Reihenfolge nach ~ / .bash_profile, ~ / .bash_login und ~ / .profile und liest und führt Befehle aus der ersten vorhandenen und aus ist lesbar.

Stellen Sie sicher, dass Sie keine der ersten beiden Dateien haben, und fügen Sie source .loginsie gegebenenfalls hinzu . Alternativ können Sie die exportZeile auch der bevorzugten Datei hinzufügen .


Andere Shells haben wahrscheinlich ähnliche Mechanismen, um die Shell-Programm-spezifischen Dateien den allgemeineren vorzuziehen .profile.

Daniel Beck
quelle
1
Vielen Dank, ich wusste nicht, dass nur die Befehle in der ersten Datei ausgeführt werden. Quell .profile in meinem .bash_profile hinzugefügt und es funktioniert viel besser! Vielen Dank
Erik
.bashrc ist eine weitere Datei, die der Liste hinzugefügt werden soll
Peter
@Pete .bashrcwird von Nicht-Anmeldesitzungen geladen . Eine übliche Konfiguration ist jedoch, dass eine von der anderen geladen wird. Unter OS X sind alle von Terminal gestarteten Shells standardmäßig Login-Shells, die sich beispielsweise von herkömmlichen Linux-Terminalemulatoren unterscheiden.
Daniel Beck
1

Versuchen Sie zum Aktualisieren Folgendes: / opt / local / bin / port selfupdate

So führen Sie einen sudo-Befehl wie folgt aus: sudo port installiere somePackageYouNeed

Versuchen Sie: sudo / opt / local / bin / port installiere somePackageYouNeed

codingt
quelle