Есть вариант оболочки cdable_vars
:
cdable_vars
Если он установлен, предполагается, что аргумент cd
встроенной команды, не являющийся каталогом, является именем переменной, значением которой является каталог, в который нужно перейти.
Вы можете добавить это в свой .bashrc
:
shopt -s cdable_vars
export myFold=$HOME/Files/Scripts/Main
Обратите внимание, что я заменил тильду на $HOME
; кавычки предотвращают раскрытие тильды, и Bash будет жаловаться на отсутствие каталога ~/Files/Scripts/Main
.
Теперь вы можете использовать это следующим образом:
cd myFold
Не $
требуется. На самом деле в этом весь смысл - как показано в других ответах, cd "$myFold"
работает без опции оболочки. cd myFold
также работает, если путь myFold
содержит пробелы, кавычки не требуются.
Обычно это работает даже с автозаполнением вкладок, так как _cd
функция в bash_completion
проверяет, установлена ли функция, cdable_vars
но не каждая реализация делает это одинаково, поэтому вам, возможно, придется bash_completion
снова исходить из вашего .bashrc
(или отредактировать, /etc/profile
чтобы установить параметр оболочки).
Другие оболочки имеют аналогичные параметры, например Zsh ( cdablevars
).