Bir kabuk seçeneği var cdable_vars
:
cdable_vars
Bu ayarlanırsa, cd
yerleş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 myFold
Ayrıca, içindeki yol myFold
boşluk içeriyorsa çalışır , alıntı gerekmez.
Bu, genellikle kontrollerdeki _cd
iş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_completion
cdable_vars
bash_completion
.bashrc
/etc/profile
Diğer kabukların da benzer seçenekleri vardır, örneğin Zsh ( cdablevars
).