Dengan zsh
, Anda akan menggunakan alias global :
$ alias -g '^^=--help|grep --color -i'
$ ls ^^ size
--block-size=SIZE scale sizes by SIZE before printing them; e.g.,
'--block-size=M' prints sizes in units of
1,048,576 bytes; see SIZE format below
-h, --human-readable with -l and/or -s, print human readable sizes
-s, --size print the allocated size of each file, in blocks
-S sort by file size, largest first
--sort=WORD sort by WORD instead of name: none (-U), size (-S),
-T, --tabsize=COLS assume tab stops at each COLS instead of 8
The SIZE argument is an integer and optional unit (example: 10K is 10*1024)
Dengan bash
, Anda mungkin dapat menggunakan ekspansi histori yang merupakan salah satu yang terjadi cukup awal pada penguraian shell yang dapat digunakan untuk mengganti pipa:
Perdana sejarah dengan teks yang ingin Anda gantikan dan karakter khusus Anda tidak mungkin menggunakan sebaliknya (seperti di £
sini yang kebetulan ada di keyboard saya):
$ --help $(: £)|grep
bash: --help: command not found
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.
Kemudian gunakan ekspansi riwayat untuk mengambil itu:
$ ls !?£? size
ls --help $(: £)|grep size
--block-size=SIZE scale sizes by SIZE before printing them; e.g.,
'--block-size=M' prints sizes in units of
-h, --human-readable with -l and/or -s, print human readable sizes
-s, --size print the allocated size of each file, in blocks
-S sort by file size, largest first
--sort=WORD sort by WORD instead of name: none (-U), size (-S),
-T, --tabsize=COLS assume tab stops at each COLS instead of 8
Atau Anda dapat readline
memperluas --help|grep
beberapa tombol atau urutan tombol tekan. Untuk itu bash
hanya berlaku untuk (dan bukan aplikasi lain seperti gdb
menggunakan readline), Anda dapat menggunakan perintah bind
bash builtin yang merupakan bash
API untuk mengkonfigurasi readline
, misalnya di ~/.bashrc
:
bind '"^^": "--help|grep "'
Atau tambahkan ke ~/.inputrc
(file konfigurasi readline Anda):
$if Bash
"^^": "--help|grep "
$endif
(ada cangkang lain seperti rc
atau es
yang menggunakan readline dan di mana melakukan pengikatan itu masuk akal tetapi AFAICT, mereka tidak mengatur rl_readline_name
variabel sebelum memohon readline
sehingga Anda tidak akan dapat menambahkan beberapa $if
pernyataan untuk mereka (mereka akan ditampilkan other
seperti semua aplikasi yang menggunakan readline tanpa memberi tahu nama aplikasi mereka)).
Perhatikan bahwa Anda harus memasukkan yang kedua ^
dalam waktu setengah detik (secara default) setelah yang pertama agar terjadi substitusi.
qh () { type -all "$1" ; { "$1" --help || man "$1" ;} | egrep -i -- "$2" ;}
# maka Anda bisa: qh ls size, qh ls "something | another" etc. the (optionnal)type -all "$1"
juga menambahkan info tentang $ 1: dikatakan jika Anda akan meluncurkan alias, fungsi, dan perintah, dll. Dan itu memberikan info dari man "$ 1" jika perintah $ 1 tidak memiliki opsi "--help" (ini kadang-kadang terjadi)