OS X - ln -s in einem Verzeichnis in ~ zeigt ein merkwürdiges Verhalten

489
Marcello Mönkemeyer

Ich bin gerade dabei, mein neues System (OS X) einzurichten und zu versuchen, eine Verbindung ~/Git/herzustellen /Library/WebServer/Documents/, sodass ich auf alle meine Git-Repositorys über 127.0.0.1 zugreifen kann. Das funktioniert jedoch nicht wie erwartet.

Während ich andere Verzeichnisse symbolisieren konnte:

ln -s / ~/Desktop/root ln -s ~ ~/Desktop/home 

Es will einfach nicht mit meinem ~/GitVerzeichnis arbeiten:

sudo ln -s ~/Git /Library/WebServer/Documents/Git ln -s ~/Git ~/Desktop/Git 

Die Verbindung wird erstellt, aber sie sagt mir, The operation can’t be completed because the original item for “Git” can’t be found.wo immer ich sie platziere, das Verhalten ist immer dasselbe. Es scheint auch mit anderen Verzeichnissen in meinem Heimatverzeichnis (außer dem Heimatverzeichnis selbst) identisch zu sein.

ls -l ~/Desktop lrwxr-xr-x 1 user staff 1 Jul 8 08:31 : -> / lrwxr-xr-x 1 user staff 4 Jul 9 12:50 Git -> /Users/user/Git lrwxr-xr-x 1 user staff 29 Jul 8 08:38 wwwroot -> /Library/WebServer/Documents/ lrwxr-xr-x 1 user staff 19 Jul 8 08:31 ~ -> /Users/user 
1

1 Antwort auf die Frage

2
Thomas Dickey

Normalerweise (da die Standard-Shell unter OSX bash ist) wird Tilde ( ~) zu Ihrem Home-Verzeichnis erweitert. Das ist im Bash-Referenzhandbuch: Tilde Expansion dokumentiert .

Ihre Verzeichnisliste zeigt jedoch an, dass Sie einen Eintrag "~"auf Ihrem Desktop erstellt haben, indem Sie entweder das Standardverhalten umgehen (Anführungszeichen, wie unter Manuelles Erweitern einer speziellen Variablen (z. B. ~ tilde) in bash ) oder aufgrund eines Fehlers beschrieben das eigentliche Heimatverzeichnis finden. Da Sie sagen, dass sich dieses Verzeichnis in einem beliebigen Verzeichnis befindet, klingt es so, als hätten Sie (während der Kontoerstellung) Dinge verschoben / umbenannt, z. B. ein anderes Laufwerk, sodass bash kein aktuelles Verzeichnis an dem Ort findet, an dem es gespeichert werden sollte. Du bekommst also einen wörtlichen Buchstaben "~".

Um jetzt darüber nachzudenken, habe ich die Sprache von Deutsch auf Englisch geändert. Nachdem ich das getan hatte, fiel mir auf, dass OS X das Zeug in meinem Heimatverzeichnis tatsächlich nicht umbenannte. Wenn ich also mit der Shell arbeite, kann ich über die englischen Verzeichnisnamen darauf zugreifen. Bei der Arbeit mit dem Finder wird jedoch immer noch alles in deutscher Sprache angezeigt. Ich habe noch keinen Grund dafür gefunden. Könnte das vielleicht das Problem sein? Wenn ja, wie kann ich dieses Zeug umbenennen, damit mein Finder das tatsächliche Verzeichnis findet? Marcello Mönkemeyer vor 9 Jahren 0
Nichtsdestotrotz, es sind nur Symlinks, die ich umbenennen musste ... und arbeiten jetzt im Dunkeln. Alles ist auf Englisch richtig benannt, und die Shell erweitert `~` zu meinem Home-Verzeichnis. Es findet jedoch nicht die Quelle (die allerdings existiert). Es macht mich jetzt verrückt ... Marcello Mönkemeyer vor 9 Jahren 0
Okay, ich habe es repariert. Du hattest recht: Der Typ, der OS X für mich installiert hat, hat sich geändert und ziemlich viele Dinge umbenannt. Ich habe einen komplett neuen Benutzer erstellt und es funktioniert jetzt. Vielen Dank für den wesentlichen Hinweis. :) Marcello Mönkemeyer vor 9 Jahren 0