Grep_color di mac


12

Saya mencoba untuk mendapatkan regex saya disorot di mac menggunakan terminal. Saya telah menempatkan ini .profile:

export GREP_COLOR='1;30;40'

Tidak ada yang berubah, jadi saya menambahkan hal yang sama ke yang bash.profilebelum ada, me-restart mesin apa-apa. Ketika saya:

egrep --color=auto ".*\W blah blah "

kemudian menyala beberapa warna kuning tetapi saya bertanya-tanya apakah saya telah melakukan sesuatu yang salah di .profileatau bash_profile.

Bantuan apa pun akan bagus: macan tutul salju, dengan terminal tua yang sederhana :-)


2
Bukankah GREP_COLORsudah usang? Anyways grep --colorharus menyorot kecocokan dalam warna default, tanpa perlu variabel lingkungan.
jw013

Itu hanya setengah benar. GREP_COLORmemungkinkan Anda untuk menyesuaikan warna yang sebenarnya, sedangkan --colorhanya mengaktifkan / menonaktifkan warna apa pun yang dikonfigurasi secara default. Dan saya pikir GREP_COLORS(jamak) adalah apa yang sudah usang. Itu sebabnya bentuk pewarnaan saya bertahun-tahun yang lalu menghilang tanpa saya sadari.
Sridhar Sarnobat

Jawaban:


22

Ini berhasil pada mesin macan tutul salju saya. Coba salin dan tempel teks di terminal Anda dan lihat apakah grep menunjukkan perilaku yang diinginkan. Jika ya, maka masalahnya adalah Anda tidak menambahkannya ke dotfile kanan. Shell apa yang Anda gunakan? Dotfile yang Anda tambahkan tergantung pada shell yang Anda gunakan.

export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;30;40'

Juga, coba jalankan printenvuntuk melihat variabel lingkungan apa yang telah Anda tetapkan dan lihat apakah ada opsi grep.


luar biasa !!! Terima kasih!! jauh lebih baik daripada mengatur alias!
cwd

1
Aneh. Saya akan memilih jawaban ini, tetapi tidak berhasil bagi saya menggunakan Terminal di Snow Leopard. Itu mengubah teks yang cocok menjadi semua kotak hitam.
Old Pro

2
@ OldPro - Saya akan merekomendasikan untuk menggunakan export GREP_COLOR='1;35;40'karena 35 adalah cyan dan 30 berwarna abu-abu - 40 adalah latar belakang hitam, sehingga terlihat gelap. Tapi ya itu berhasil! :)
cwd

Terminal saya menjadi jauh lebih indah. Saya tahu kecantikan sejati ada di dalam tapi saya dangkal.
Sridhar Sarnobat

1

Saya tidak berpikir pengaturan default Snow Leopard adalah menggunakan warna untuk grep. Saya telah sukses di kotak OS X dengan menambahkan garis seperti alias grep=grep --color=alwayspada saya .bashrcuntuk memastikan penyorotan yang konsisten.


6
--color=alwaysbisa menjadi masalah jika output grep disalurkan ke perintah lain. --color=autoakan memancarkan karakter kontrol hanya ketika output langsung ditampilkan pada terminal
Gowtham

1

Bukan bash.profilejuga bukan bash_profile, itu .bash_profile.

Adapun warna pada Mac Anda, cukup taruh ini di ~/.bash_profile:

export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;30;40'

Pastikan untuk menggunakan .bash_profiledirektori home Anda ( ~/).

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.