Xuất kết quả grep thành tệp văn bản, cần đầu ra rõ ràng hơn


81

Khi sử dụng lệnh Grep để tìm một chuỗi tìm kiếm trong một tập hợp tệp, làm cách nào để kết xuất kết quả vào tệp văn bản?

Ngoài ra, có một công tắc nào cho lệnh Grep cung cấp kết quả rõ ràng hơn để dễ đọc hơn, chẳng hạn như nguồn cấp dữ liệu dòng giữa mỗi mục nhập hoặc một cách để xác minh tên tệp và kết quả tìm kiếm?

Ví dụ, một sự thay đổi ...

./file/path: first result
./another/file/path: second result
./a/third/file/path/here: third result

đến

./file/path: first result

./another/file/path: second result

./a/third/file/path/here: third result

14
Tôi thích rằng những câu hỏi thực tế siêu hữu ích "không phải là một câu hỏi thực tế" này đã xuất hiện trong các kết quả tìm kiếm hàng đầu trong Google nhiều năm sau đó.
Adrian Carr

Câu trả lời:


108
grep -n "YOUR SEARCH STRING" * > output-file

Các -nsẽ in số dòng và >sẽ chuyển hướng grep-kết quả đầu ra-file.
Nếu bạn muốn "làm sạch" kết quả, bạn có thể lọc chúng bằng cách sử dụng đường ống, |ví dụ:
grep -n "test" * | grep -v "mytest" > output-file sẽ khớp với tất cả các dòng có chuỗi "test" ngoại trừ các dòng khớp với chuỗi "mytest" (đó là công tắc -v) - và sẽ chuyển hướng kết quả đến một tệp đầu ra.
Bạn có thể tìm thấy một số mẹo về grep trên bài đăng này


10
Grep chỉ viết khi nó kết thúc hay nó viết từng dòng khi nó xử lý nội dung? Cảm ơn!
Crista23

5
@alfasin - không phải đơn '>' sẽ ghi đè kết quả trong tệp đầu ra? Chúng ta có nên sử dụng double '>>' để nối kết quả vào tệp không?
GTodorov

3
@GTodorov vâng, nếu bạn muốn nối thêm sử dụng>>
Nir Alfasi

12
Đối với những khách truy cập trong tương lai, câu trả lời cho câu hỏi của @ Crista23 là nó được viết khi grep kết thúc
HBeel 22/09/2016

35

Chuyển hướng đầu ra chương trình được thực hiện bởi trình bao.

grep ... > output.txt

grepkhông có cơ chế để thêm các dòng trống giữa mỗi kết quả phù hợp, nhưng cung cấp các tùy chọn như ngữ cảnh xung quanh đường phù hợp và tô màu cho chính kết quả phù hợp. Xem grep(1)trang người đàn ông để biết chi tiết, cụ thể là các tùy chọn -C--color

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.