Ответы:
Проблема с созданием символической ссылки таким образом заключается в том, что вы ограничены тем, где создана символическая ссылка. Это также добавляет к проблеме, если у вас есть каталог ../d/.. где-то в вашей системе.
Есть несколько способов решить эту проблему ....
В терминале вы можете создать псевдоним, введя команду
alias cdd='cd ~/Documents'
Преимущество здесь в том, что он будет работать где угодно, не добавляя его в свой PATH.
Чтобы сделать его постоянным, добавьте команду к вашему .bash_profile в вашем домашнем каталоге.
Кроме того, в вашем .bash_profile добавить следующее
shopt -s cdable_vars
export Docs=$HOME/Documents
Теперь, когда вы печатаете cd Docs это будет расширяться HOME к тому, что ваш каталог пользователя плюс каталог, который вы указали. ( /Users/yourusername/Documents )
Лично я сделал это с переменной icloud следующим образом:
export icloud=$HOME/Library/Mobile\ Documents/com~apple~CloudDocs/
Теперь я могу ссылаться на местоположение своих документов iCloud, не запоминая этот длинный путь.
Вы можете определить переменные, указывающие на ваши каталоги. Например:
[~]$ export d=~/Documents
[~]$ ls -l $d
[~]$ cd $d
[~/Documents]$
В Bash вы можете использовать cdable_vars возможность быть в состоянии cd без предшествующего $:
[~]$ shopt -s cdable_vars
[~]$ export d=~/Documents
[~]$ cd d
[~/Documents]$
Но это не позволяет сбрасывать $ для других команд, так ls -l d не сработает