Saat menggunakan perintah dalam bash, saya suka opsi tab ganda untuk menampilkan perintah yang tersedia. Beberapa perintah memiliki kemungkinan lebih banyak kecocokan daripada yang lain:
Cuplikan layar penyelesaian tab http://img13.imageshack.us/img13/5541/picturemhy.jpg
Apakah ada cara saya bisa menyalurkan output dari tab ganda ke suatu tempat, seperti grep
? Saya menemukan pos terkait , tetapi saya masih tidak yakin bagaimana menerapkannya untuk mengirimnya ke grep.
grep
regex?(y or n or g[rep])
? Saya benci terdengar pesimistis, tapi saya ragu ini bisa dilakukan tanpa menambahkannya ke kode bash.Jawaban:
Untuk perintah, gunakan
compgen -c
:Output ini Anda cukup pipa
grep
.sumber
Berdasarkan jawaban @ salutis, saya membuat skrip yang saya panggil
comp
dan simpan dalam~/bin/comp
pencarian itucommands
',,aliases
danbuiltins
, (flag opsi-cab
lihat entri bash man ), dengan parameter opsional kedua yang, jika ada, menyalurkan output kegrep
dan mencari parameter kedua.Kode:
Secara pribadi saya juga akan tertarik untuk mencari cara untuk menghapus perintah terakhir dari sejarah shell di skrip (sesuatu yang berkaitan dengan
history -d
) sehingga ketika mencaribash
sejarah saya tidak akan menemukancomp
entri. Saya tahu saya juga bisa melakukan ini denganHISTIGNORE
tetapi linux cukup kuat sehingga harus ada cara untuk melakukannya dari file skrip juga - kan?sumber
Mengapa tidak menemukan yang Anda cari?
Contoh:
Mengetahui kasus penggunaan Anda, saya dapat membuat contoh perintah yang lebih rinci.
sumber