Mungkin lebih baik menggunakan link
Tautan Lunak
Tautan simbolis atau lunak (file atau direktori, lebih fleksibel dan mendokumentasikan diri sendiri)
# Source Link
ln -s /home/jake/doc/test/2000/something /home/jake/xxx
Tautan Keras
Tautan keras (hanya file, kurang fleksibel, dan tidak mendokumentasikan sendiri)
# Source Link
ln /home/jake/doc/test/2000/something /home/jake/xxx
Cara membuat tautan ke direktori
Petunjuk :Jika Anda tidak perlu melihat tautan di rumah Anda, Anda dapat memulainya dengan titik.; maka itu akan disembunyikan secara default maka Anda dapat mengaksesnya seperti
cd ~/.myHiddelLongDirLink
Ada opsi shell cdable_vars :
cdable_vars
Jika ini disetel, argumen kecdbuiltincommand yang bukan direktori diasumsikan sebagai nama variabel yang nilainya adalah direktori yang akan diubah.
Anda dapat menambahkan ini ke .bashrc Anda :
shopt -s cdable_vars
export myFold=$HOME/Files/Scripts/Main
Perhatikan bahwa saya telah mengganti tilde dengan $HOME; kutipan mencegah ekspansi tilde dan Bash akan mengeluh bahwa tidak ada direktori ~/Files/Scripts/Main .
Sekarang Anda dapat menggunakan ini sebagai berikut:
cd myFold
Tidak ada $ yg dibutuhkan. Itulah intinya, sebenarnya – seperti yang ditunjukkan pada jawaban lain, cd "$myFold" berfungsi tanpa opsi shell. cd myFold juga berfungsi jika jalur di myFold berisi spasi, tidak perlu mengutip.
Ini bahkan biasanya berfungsi dengan pelengkapan otomatis tab sebagai _cd fungsi di bash_completion memeriksa apakah cdable_vars diatur – tetapi tidak setiap implementasi melakukannya dengan cara yang sama, jadi Anda mungkin harus mencari bash_completion lagi di .bashrc Anda (atau edit /etc/profile untuk menyetel opsi shell).
Shell lain memiliki opsi serupa, misalnya Zsh (cdablevars ).
Karena ini adalah variabel lingkungan (alias memiliki definisi yang berbeda di bash ), Anda perlu mengevaluasinya dengan sesuatu seperti:
cd "${myFold}"
atau:
cp "${myFold}/someFile" /somewhere/else
Tapi saya sebenarnya merasa lebih mudah, jika Anda hanya ingin kemudahan beralih ke direktori itu, untuk membuat nyata alias (di salah satu bash file startup seperti .bashrc ), agar saya dapat menyimpan penekanan tombol:
alias myfold='cd ~/Files/Scripts/Main'
Maka Anda bisa menggunakan (tanpa cd ):
myfold
Untuk menghilangkan definisi, Anda menggunakan unalias . Transkrip berikut menunjukkan semua di antaranya beraksi:
pax> cd ; pwd ; ls -ald footy
/home/pax
drwxr-xr-x 2 pax pax 4096 Jul 28 11:00 footy
pax> footydir=/home/pax/footy ; cd "$footydir" ; pwd
/home/pax/footy
pax> cd ; pwd
/home/pax
pax> alias footy='cd /home/pax/footy' ; footy ; pwd
/home/pax/footy
pax> unalias footy ; footy
bash: footy: command not found