Katakanlah saya ingin mengubah perilaku asli ls
alat dengan cara ini:
$ ls
Hello World
file1 file2 ...
Bagaimana saya bisa melakukan ini?
Saat menjalankan, ls
saya ingin menjalankan perintah lain, katakanlah echo "Hello World!"
.
Solusi cepat yang saya lihat menggunakan alias:
alias orig_ls="ls"
alias ls='echo "Hello World!"'
Namun, ini bukan solusi nyata karena ketika saya akan menjalankannya orig_ls
akan keluar "Hello World!"
.
bash
shell
command-line
alias
Ionică Bizău
sumber
sumber
Jawaban:
Terkadang alias tidak cukup kuat untuk dengan mudah melakukan apa yang Anda inginkan, jadi inilah cara tanpa menggunakannya.
Dalam beberapa file yang bersumber ketika shell Anda mulai (misalnya
.bashrc
), tambahkan fungsi berikut:Tidak seperti alias, suatu fungsi dapat muncul kembali. Itu sebabnya
command ls
digunakan sebagai gantils
; ia memberi tahu shell Anda untuk menggunakan fungsi sebenarnyals
dari yang baru saja Anda tetapkan.sumber
command
alternatif untuk OS X?command
tidak bekerja: / Saya tidak tahu dan saya tidak punya Mac untuk mengujinya, maaf.Anda tidak boleh lupa menelepon
ls
:sumber
&
memang bisa menggunakan tetapi saya tidak mendapatkan argumen yang Anda buat dari itu.