Ich habe versucht, einen symbolischen Link mit dem folgenden Befehl zu erstellen:
ln -s "~/Foo Bar/" Foo
... aber es hat nicht funktioniert (dh wenn ich in den Finder gehe und versuche, darauf zu doppelklicken, sagt es, dass es auf einen ungültigen Pfad zeigt und fordert mich auf, den Alias zu löschen oder zu reparieren). Ich musste den Ordner umbenennen FooBar
und dann den folgenden Befehl ausführen:
ln -s ~/FooBar/ Foo
Wie kann ich den Link erstellen, ohne das Leerzeichen aus dem Ordnernamen entfernen zu müssen?
Ich suche nach einer Möglichkeit, dies im Terminal und nicht in der Benutzeroberfläche von Finder zu tun.
Die Anführungszeichen verhindern ~
, dass sie in Ihren Home-Ordner erweitert werden, also müssen Sie entweder nur den Teil mit dem Leerzeichen zitieren:
ln -s ~/"Foo Bar/" Foo
Hinweis: Wie viel genau zitiert wird, spielt keine Rolle, solange das Leerzeichen im zitierten Teil steht und ~/ nicht. ~/Foo" "Bar/
, ~/"Foo Bar"/
, ~/Fo"o B"ar/
usw. sind alle gleichwertig. Außerdem haben einfache und doppelte Anführungszeichen die gleiche Wirkung auf Leerzeichen (obwohl sie sich bei anderen Zeichen unterscheiden), also würden ~/'Foo Bar/'
, ~/Foo' 'Bar/
usw. auch funktionieren.
Sie können auch ein Escape verwenden, um zu verhindern, dass das Leerzeichen als Trennzeichen behandelt wird:
ln -s ~/Foo\ Bar/ Foo
"$HOME/Foo Bar/"
.~
, in doppelte Anführungszeichen gesetzt werden $HOME
sollte , um Verwirrung zu vermeiden, wenn Ihr Home-Verzeichnis Leerzeichen oder andere seltsame Zeichen enthält. "$HOME/Foo Bar/"
(wie Sie vorschlagen), "$HOME"/Foo" "Bar/
, "$HOME"/Foo\ Bar/
, usw. funktionieren.Ich habe es selbst getestet. Ich habe kein Problem mit einem Leerzeichen darin:
$ ln -s "/Users/joe/test/foo bar"/ linkToFoo_Bar
ls zeigt: $ linkToFoo_Bar -> /Users/joe/test/foo bar/
und es funktioniert im Terminal und im Finder ohne Probleme.
~
Helfer.
Cajunluke
ln -s
macht Symlinks. Der Finder erstellt Aliase. Sie sind in der praktischen, allgemeinen Verwendung fast identisch, aber es ist wichtig zu erkennen, dass sie unterschiedlich sind . Symlinks verweisen auf einen Verzeichnispfad, während Aliase auf eine Datei verweisen. Wenn beide auf dieselbe Datei verweisen und Sie die Datei in einen anderen Ordner verschieben, dann erstellen Sie eine neue Datei im alten Ordner, der Alias zeigt auf das verschobene Original und der Symlink auf die neue Datei.Sinnvoll
Jason Salaz
ln -s ~/Foo<tab>
(wobei <tab> die tatsächliche Taste ⇥ (Tabulator) auf Ihrer Tastatur bezeichnet), wenn es nur einen Ordner gibt, der mit "Foo" beginnt,~
dann wird es automatisch Erweitern Sie den Pfad auf~/Foo\ Bar/
.