Bir kabuk seçeneği var cdable_vars:
cdable_vars
Bu ayarlanırsa, cdyerleşik komutun bir dizin olmayan bağımsız değişkeninin, değeri değiştirilecek dizin olan bir değişkenin adı olduğu varsayılır.
Bunu şuraya ekleyebilirsiniz .bashrc:
shopt -s cdable_vars
export myFold=$HOME/Files/Scripts/Main
Tilde'yi $HOME; ile değiştirdiğime dikkat edin ; tırnaklar tilde genişlemesini engeller ve Bash dizin olmadığından şikayet eder ~/Files/Scripts/Main.
Şimdi bunu şu şekilde kullanabilirsiniz:
cd myFold
Gerek yok $. Aslında bütün mesele bu - diğer yanıtlarda gösterildiği gibi cd "$myFold", kabuk seçeneği olmadan çalışır. cd myFoldAyrıca, içindeki yol myFoldboşluk içeriyorsa çalışır , alıntı gerekmez.
Bu, genellikle kontrollerdeki _cdişlev ayarlıysa , sekme otomatik tamamlama ile bile çalışır - ancak her uygulama bunu aynı şekilde yapmaz, bu nedenle yeniden kaynak oluşturmanız (veya kabuk seçeneğini ayarlamak için düzenlemeniz) gerekebilir .bash_completioncdable_varsbash_completion.bashrc/etc/profile
Diğer kabukların da benzer seçenekleri vardır, örneğin Zsh ( cdablevars).