Ändern der Umgebungsvariable $HOME im Terminal auf Mac 10.8

Um klar zu sein, suche ich nicht nach einer Problemumgehung, die beim Start einen Befehl zum Ändern des Verzeichnisses ausführt. Ich möchte die $HOME env var so ändern, dass Tilde-Befehle funktionieren und dass die Eingabe eines 'cd'-Befehls mich zu diesem Verzeichnis zurückbringt.

Ich bin mir sicher, dass es möglich ist, dass ich den Befehl einfach nicht finden kann.

Ich habe versucht, es in meinem /etc/profile einzustellen, aber es scheint nicht zu funktionieren. Ich habe dort ungefähr 4 verschiedene Einstellungen ausprobiert. Die, an die ich mich erinnern kann, sind:

$HOME = /directroy
$HOME = "/directroy"
setenv HOME /directory

Mir fehlt vielleicht etwas Einfaches, aber ich kann keine Lösung finden.

Eigentlich frage ich mich eher, warum HOME nicht schon richtig gesetzt ist, wenn die Shell startet. Wenn Sie im Terminal einen neuen Tab öffnen, was ist das Ergebnis von echo $HOME?
@patrix Ich hätte wahrscheinlich beschreibender sein sollen. Es ist "richtig" auf das Home-Verzeichnis meines Benutzers eingestellt. Ich möchte, dass es ein anderes Verzeichnis ist, da meine gesamte Terminalnutzung auf einem anderen Verzeichnis basiert.
Ich rate dringend davon ab. Die Konvention, dass $HOME auf Ihr Home-Verzeichnis zeigt, ist stark in den Unix-Raum eingebettet, und viele Shell-Skripte, Perl-Skripte und Binärdateien verlassen sich darauf. Sie erhalten bessere Ergebnisse, indem Sie etwas wie definieren MYROOT=/Users/andrew/base/of/all/thingsund dann $MYROOTgegebenenfalls verwenden.

Antworten (2)

In bash (der Standard-Shell von Terminal auf 10.8) die Syntax:

HOME=/your/path
export HOME
Dies funktionierte nur für meine aktuelle Sitzung. Beim Öffnen eines neuen Terminals würde HOME auf seinen ursprünglichen Wert zurückgesetzt.

Erweitern Sie den @patrix-Kommentar und ändern Sie Ihre $HOME/.bash_profileDatei, um die folgenden Zeilen hinzuzufügen:

MYROOT=/path/to/dir/you/want
export MYROOT
cd $MYROOT

Auf diese Weise werden Sie Ihre Shell starten /path/to/dir/you/wantund die Verwendung cd $MYROOTbringt Sie dorthin zurück.