Saya memiliki banyak alias yang saya buat di .bash_aliases
file saya , dan mereka sangat berguna, jadi jika saya ingin semua info pada paket saya melakukan sesuatu seperti:
allinfo software-center
Dan itu setara dengan:
apt-cache show software-center
Karena alias ditetapkan sebagai:
alias allinfo='apt-cache show'
Tetapi ada satu kelemahan dari ini, saya saat ini tidak dapat melengkapi otomatis TABketika menggunakan allinfo
alih-alih perintah yang sebenarnya. Jadi saya bertanya-tanya apakah ada cara untuk mengatasi kerugian ini dan membuatnya agar allinfo software-ce[TAB]
bekerja akan sama seperti ketika Anda menggunakannya dengan perintah yang sebenarnya, dan bukan hanya membuat ruang tab yang besar?
Saya menggunakan gnome-terminal
.
Informasi OS:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 15.04
Release: 15.04
Codename: vivid
Informasi paket:
gnome-terminal:
Installed: 3.14.2-0ubuntu3
Candidate: 3.14.2-0ubuntu3
Version table:
*** 3.14.2-0ubuntu3 0
500 http://gb.archive.ubuntu.com/ubuntu/ vivid/main amd64 Packages
100 /var/lib/dpkg/status
Jawaban:
Pertanyaan bagus! Jika
allinfo
perintah Anda sama dengan adilapt-cache
, (yaitu, tanpashow
) maka kita bisa melihat penyelesaiannyaapt-cache
, dan menerapkannya padaallinfo
alias Anda .Namun, Anda ingin bagian dari
apt-cache
penyelesaian, jadi kami memiliki sedikit pekerjaan yang harus dilakukan.Jika kita melihat definisi penyelesaian untuk
apt-cache
- dalam/usr/share/bash-completion/completions/apt-cache
, kita melihat yang berikut ini digunakan untukshow
subperintah:- ini hanya mengatur
COMPREPLY
variabel ke daftar paket yang cocok.Jadi, kami dapat meminjam ini dan menulis fungsi kami sendiri, dan mengikatnya ke allinfo alias Anda:
Jika Anda menambahkan frmentasi itu ke
.bashrc
file Anda, Anda harus menyelesaikannya sesuai dengan yang Anda harapkan.sumber
Saya tidak tahu
bash
, tetapi berfungsi denganzsh
dan beberapa pluginInstal z-shell dengan
dan atur z-shell sebagai shell standar Anda
dan mulai terminal baru untuk menggunakan z-shell
Tambahkan Antigen v1
Dan konfigurasikan
Beberapa gambar (prompt adalah nojhan / liquidprompt)
sumber
cd
dan melakukan hal path file. Bagaimana saya mendapatkannya untuk membaca.bash_aliases
file?antigen: command not found
melakukan konfigurasi.