Đảo ngược grep để có được vài lần xuất hiện cuối cùng trong một tệp


9

Nói rằng tôi muốn lấy 5 đề cập cuối cùng của cron khi /var/log/syslog.logxem qua hướng dẫn grep, có vẻ như tôi không thể tìm được grep để tìm kiếm ngược lại. Tuy nhiên tôi có thể lấy những lần xuất hiện gần đây nhất.

grep cron -m 5 /var/log/syslog

Có một lệnh grep ngược tôi có thể sử dụng? :)

Câu trả lời:


14

Theo triết lý unix thông thường của các công cụ kết hợp: sử dụng grepđể tìm kiếm và tailtrả về phần cuối của tệp.

grep cron /var/log/syslog | tail -n 5

Sẽ nhanh hơn để đảo ngược thứ tự nếu bạn biết rằng nội dung bạn quan tâm nằm trong các dòng X cuối cùng. đuôi -n 100 </ var / log / syslog | grep cron
bk0

Lưu ý điều này không thực sự đảo ngược thứ tự, nó chỉ giới hạn grep ở các dòng X dưới cùng. Có thể hoặc không thể phục vụ mục đích.
tuyên thệ

16

Những gì về đường ống đến tac?

http://linux.about.com/l Library / cmd / blcmdl1_tac.htm

tac  /var/log/syslog | grep cron -m 5

Bạn cần một tac thứ hai cuối cùng, để xây dựng lại trật tự ban đầu, không tac /var/log/syslog | grep cron -m 5 | tac? Tacatac ... :)
người dùng không biết

Nhưng không phải là một phần của yêu cầu ngược lại? Taaaac ^^
neurino

À, có lẽ! Tôi chỉ hiểu phần ngược lại là tìm kiếm phần cuối cùng.
người dùng không xác định
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.