Grep_color trên mac


12

Tôi đang cố gắng làm nổi bật regex của mình trên mac bằng terminal. Tôi đã đặt cái này là của tôi .profile:

export GREP_COLOR='1;30;40'

Không có gì thay đổi, vì vậy tôi đã thêm tương tự vào bash.profilevẫn không có gì, khởi động lại máy không có gì. Khi tôi là:

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

Sau đó, nó sáng lên một số màu vàng nhưng tôi tự hỏi nếu tôi đã làm điều gì đó sai trong .profilehoặc bash_profile.

Bất kỳ trợ giúp sẽ tốt: báo tuyết, chỉ với thiết bị đầu cuối cũ đơn giản :-)


2
Không GREP_COLORbị phản đối? Dù sao grep --colorcũng nên làm nổi bật các kết quả khớp với màu mặc định mà không cần bất kỳ biến môi trường nào.
jw013

Điều đó chỉ đúng một nửa. GREP_COLORcho phép bạn tùy chỉnh màu sắc thực tế, trong khi --colorchỉ bật / tắt bất kỳ màu nào được cấu hình theo mặc định. Và tôi nghĩ GREP_COLORS(số nhiều) là những gì không được chấp nhận. Đó là lý do tại sao mẫu tô màu của tôi nhiều năm trước biến mất mà tôi không nhận ra.
Sridhar Sarnobat

Câu trả lời:


22

Điều này làm việc trên máy báo tuyết của tôi. Hãy thử chỉ sao chép và dán văn bản trong thiết bị đầu cuối của bạn và xem nếu grep hiển thị hành vi mong muốn. Nếu vậy, vấn đề là bạn không thêm nó vào dotfile bên phải. Bạn đang sử dụng vỏ gì? Dotfile bạn nên thêm nó phụ thuộc vào shell bạn sử dụng.

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

Ngoài ra, hãy thử chạy printenvđể xem những biến môi trường nào bạn đã đặt và xem có tùy chọn grep nào chưa.


thông minh!!! cảm ơn bạn!! tốt hơn nhiều so với việc thiết lập một bí danh!
cwd

1
Kỳ dị. Tôi sẽ bỏ phiếu cho câu trả lời này, nhưng nó không hoạt động với tôi khi sử dụng Terminal trên Snow Leopard. Nó biến văn bản phù hợp thành hộp toàn màu đen.
Old Pro

2
@OldPro - Tôi thực sự khuyên bạn nên sử dụng export GREP_COLOR='1;35;40'vì 35 là màu lục lam và 30 là màu xám- 40 là nền đen, vì vậy nó trông tối. Nhưng có nó hoạt động! :)
cwd

Thiết bị đầu cuối của tôi đã trở nên đẹp hơn rất nhiều. Tôi biết vẻ đẹp thực sự ở bên trong nhưng tôi hời hợt.
Sridhar Sarnobat

1

Tôi không nghĩ cài đặt mặc định của Snow Leopard là sử dụng màu cho grep. Tôi đã thành công trên hộp OS X của mình bằng cách thêm một dòng như alias grep=grep --color=alwaystrong tôi .bashrcđể đảm bảo làm nổi bật nhất quán.


6
--color=alwayscó thể là một vấn đề nếu đầu ra của grep được chuyển sang lệnh khác. --color=autosẽ chỉ phát ra các ký tự điều khiển khi đầu ra được hiển thị trực tiếp trên thiết bị đầu cuối
Gowtham

1

bash.profilecũng không phải bash_profile, nó .bash_profile.

Đối với màu sắc trên máy Mac của bạn, chỉ cần đặt màu này vào ~/.bash_profile:

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

Hãy chắc chắn để sử dụng .bash_profiletrong thư mục nhà của bạn ( ~/).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.