
Ich versuche, eine Verknüpfung einzurichten, damit ich nicht so oft einen wirklich langen Verzeichnisnamen eingeben muss. In ~/.bash_profile
mache ich etwas Ähnliches wie:
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
Wie kann ich das Leerzeichen in einem Verzeichnisnamen vermeiden/bewahren, wenn ich versuche, diese Variable festzulegen?
Ich habe verschiedene Lösungen ausprobiert (Verwendung von einfachen oder doppelten Anführungszeichen, Escapen mit einem Backslash (ich habe sogar 'My\\\ Name'
) versucht, überhaupt keine Anführungszeichen und Kombinationen dieser Optionen).
Danke.
Antwort1
export CDPATH=".:~:/This/Is/A/Really/Long/Path/That/Ends/With/My Name"
sollte gut sein
ich habe es versucht
cd /tmp/
mkdir "aaa bbb"
mkdir "aaa bbb/a" "aaa bbb/b"
export CDPATH="/tmp/aaa bbb"
Und
cd a
funktioniert einwandfrei
Wenn Sie das Verzeichnis schneller wechseln möchten, können Sie auch einen Alias erstellen
alias longpath="cd '/This/Is/A/Really/Long/Path/That/Ends/With/My Name'"
aber es wird das Problem des Kopierens in dieses Verzeichnis nicht lösen
cp longpath
wird nicht funktionieren.
Vielleicht funktioniert es nicht richtig und Sie sollten die Bash-Vervollständigung installieren und aktivieren – sie definiert eine _cd-Funktion und legt sie als Vervollständiger für den CD-Befehl fest, der die Standardvervollständigung überschreibt und $CDPATH einschließt.