Tôi muốn lọc ra một vài dòng trước và sau một dòng phù hợp trong một tệp.Tìm kiếm đảo ngược grep với ngữ cảnh
này sẽ loại bỏ các dòng mà tôi không muốn:
$ grep -v "line that i don't want"
Và điều này sẽ in 2 dòng trước và sau khi dòng Tôi không muốn:
$ grep -C 2 "line that i don't want"
Nhưng khi tôi kết hợp chúng, nó không lọc ra 2 dòng trước và sau dòng tôi không muốn:
# does not remove 2 lines before and after the line I don't want:
$ grep -v -C 2 "line that i don't want"
Làm cách nào để lọc ra không chỉ dòng mà tôi không muốn, mà còn là các dòng trước và sau nó? Tôi đoán sed
sẽ tốt hơn cho điều này ...
Chỉnh sửa: Tôi biết điều này có thể được thực hiện trong một vài dòng awk/Perl/Python/Ruby/etc, nhưng tôi muốn biết liệu có ngắn gọn hay không một lớp lót tôi có thể chạy từ dòng lệnh.
http://superuser.com –
có lý do gì không? – aaronstacy