it-swarm-id.com

Ganti perintah grep dengan grep -n --colour?

Karena saya malas .... kapan saja saya ingin menggunakan grep, saya ingin grep -n --colour. Apakah ada cara untuk memetakan ini secara permanen?

17
Tree77

Dalam file $ HOME/.bashrc Anda, tambahkan:

export GREP_OPTIONS="-n --color"

Ini akan bekerja dengan egrep juga dan di alias yang menggunakan grep.

Pembaruan : GREP_OPTIONS sudah ditinggalkan sejak grep 2.21 aktif dan jika Anda menggunakan solusi ini, Anda akan melihat peringatan berikut:

grep: warning: GREP_OPTIONS is deprecated; please use an alias or script

Solusi terbaik adalah dengan mengikuti saran maco dalam jawabannya . Atau beralih ke menggunakan ag , yang menampilkan warna secara default.

31
richq

Edit ~/.bash_aliases Tambahkan baris yang mengatakan:

alias grep='grep -n --color'

~/.bash_aliases secara otomatis disertakan oleh ~/.bashrc jika ada

29
maco

anda dapat memodifikasi file .bashrc yang terletak di direktori home Anda dengan mendefinisikan alias, yang akan menimpa pengaturan default apa pun:

alias grep = 'grep -n --color'

setelah perubahan tutup dan buka terminal lagi karena file hanya dibaca ketika Anda membuka terminal.

Jika Anda melihat pada file .bashrc Anda akan menemukan lebih banyak alias default seperti:

alias ll = 'ls -l'

alias la = 'ls -A'

alias l = 'ls -CF'

2
Paolo Sammicheli

Buat skrip di samping alias yang disebutkan dalam jawaban lain. Alias ​​dengan sendirinya tidak akan selalu berfungsi, dan lapisan skrip cukup cepat untuk keluaran yang dapat dibaca manusia.

Pilih nama pendek, seperti cgrep:

#!/bin/sh
grep --color -n "[email protected]"

Tempatkan di jalur Anda, katakan ~/bin (jika Anda membaca PDU ini di jalur Anda :). Maka hal-hal seperti ini akan berhasil:

find /usr/share -name '*.txt' | xargs cgrep testing

Aku masih tidak begitu senang, aku juga ingin grep selalu warna ketika stdout ke terminal tanpa mengetik cgrep secara selektif.

0
rfabbri