GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara membuat alias untuk jalur yang panjang?

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 ke cd builtincommand 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

Linux
  1. Cara Membuat Sudo Mengingat Kata Sandi Lebih Lama

  2. Bagaimana Cara Menonaktifkan Alias ​​​​Di Bash Untuk Satu Perintah??

  3. Bagaimana cara menambahkan nama domain alias untuk situs web saya?

  1. Cara membuat VPN

  2. Cara membuat perintah alias berfungsi di skrip bash atau file bashrc

  3. Cara membuat tautan ke direktori

  1. Bagaimana cara membuat paket pengujian Travis CI untuk Linux, OS X, Windows?

  2. Bagaimana cara membuat `ls` mewarnai keluarannya secara default, tanpa mengatur alias?

  3. Cara mengatur jalur untuk perintah sudo