Nói rằng tôi có tập tin sau:
$ cat test
test line 1
test line 2
line without the search word
another line without it
test line 3 with two test words
test line 4
Theo mặc định, greptrả về mỗi dòng có chứa cụm từ tìm kiếm:
$ grep test test
test line 1
test line 2
test line 3 with two test words
test line 4
Truyền --colortham số grepsẽ làm cho nó làm nổi bật phần của dòng khớp với biểu thức tìm kiếm, nhưng nó vẫn chỉ trả về các dòng có chứa biểu thức. Có cách nào để grepxuất ra mọi dòng trong tệp nguồn, nhưng làm nổi bật các kết quả khớp?
Bản hack khủng khiếp hiện tại của tôi để thực hiện điều này (ít nhất là trên các tệp không có hơn 10000 dòng liên tiếp không có kết quả trùng khớp) là:
$ grep -B 9999 -A 9999 test test

Nếu grepkhông thể thực hiện được điều này, có công cụ dòng lệnh nào khác cung cấp chức năng tương tự không? Tôi đã loay hoay ack, nhưng dường như cũng không có lựa chọn nào cho nó.
-C 9999thay cho. -A 9999 -B 9999Tôi luôn luôn làm:grep -C 9999 pattern file