
Ich habe einen Alias für einen Ordner mit dem Namen „htdocs alias“ erstellt, aber wenn ich im Terminal „cd ‚htdocs alias‘“ oder „cd htdocs\ alias“ eingebe, funktioniert es nicht?
gibt es Gründe, warum das passiert? Oder irgendwelche Vorschläge, um das Problem zu lösen?
Antwort1
Mac OS-Aliase ähneln eher Windows-Verknüpfungen als Unix-Symlinks. Sie können auf sie doppelklicken, aber nicht cd
in sie hinein.
Dieser Artikelerklärt, wie man cd
die folgenden OS X-Aliase erstellt:
Dies ist ein zweiteiliger Prozess, der ein wenig Vertrautheit mit gcc und bash erfordert, aber ich werde versuchen, es so einfach wie möglich zu machen. Zunächst benötigen Sie diese Datei:getTrueName.c. Diese Datei wurde von Thos Davis erstellt und ist unter der GPLv2 lizenziert. Speichern Sie sie an einem beliebigen Ort und kompilieren Sie sie dann mit dem folgenden Befehl:
gcc -o getTrueName -framework Carbon getTrueName.c
Dadurch wird die ausführbare Datei „getTrueName“ im selben Verzeichnis wie die Quelle erstellt. Sie können sie zu Ihrem PATH hinzufügen oder sie direkt nach /usr/bin kopieren, damit Sie leicht darauf zugreifen können.
Interessanterweise wird .bashrc nicht wie erwartet ausgeführt, wenn Terminal eine neue Shell öffnet. Stattdessen wird unter der Login-Shell .bash_profile ausgeführt. Fügen Sie also Folgendes zu .bash_profile in Ihrem Home-Verzeichnis hinzu. Möglicherweise müssen Sie es zuerst erstellen; standardmäßig ist es dort nicht vorhanden.
cd() { if [[ -f "$1" || -L "$1" ]]; then path=$(getTrueName "$1") builtin cd "$path" else builtin cd "$@" fi }
[habe die Funktion etwas bearbeitet –grawity]