Hiển thị các dòng trước và sau so khớp qua Grep

Show Lines Before After Match Via Grep



Grep đã được sử dụng rộng rãi trong các hệ thống Linux khi làm việc trên một số tệp, tìm kiếm một số mẫu cụ thể, v.v. Lần này, chúng tôi đang sử dụng lệnh grep để hiển thị các dòng trước và sau từ khóa phù hợp được sử dụng trong một số tệp cụ thể. Vì mục đích này, chúng tôi sẽ sử dụng cờ -A, -B và, -C trong suốt hướng dẫn của chúng tôi. Vì vậy, bạn phải thực hiện từng bước để hiểu rõ hơn. Đảm bảo rằng bạn đã cài đặt hệ thống Linux Ubuntu 20.04.

Đầu tiên, bạn phải mở dòng lệnh Linux để bắt đầu làm việc với grep. Bạn hiện đang ở Thư mục chính của hệ thống Ubuntu của mình ngay sau khi mở dòng lệnh. Vì vậy, hãy thử liệt kê tất cả các tệp và thư mục trong thư mục chính của hệ thống Linux của bạn bằng lệnh ls dưới đây và bạn sẽ nhận được tất cả. Bạn có thể thấy, chúng tôi có một số tệp văn bản và một số thư mục được liệt kê trong đó.







ls



Ví dụ 01: Sử dụng ‘-A’ và ‘-B’

Từ các tệp văn bản được hiển thị ở trên, chúng ta sẽ xem xét một số tệp trong số này và thử áp dụng lệnh grep trên chúng. Trước tiên, hãy mở tệp văn bản one.txt bằng lệnh cat phổ biến như bên dưới:



$con mèoone.txt





Đầu tiên chúng ta sẽ thấy một số từ cụ thể phù hợp trong tệp văn bản này bằng cách sử dụng lệnh grep như bên dưới. Chúng tôi đang tìm kiếm từ chúng tôi trong tệp văn bản one.txt bằng cách sử dụng hướng dẫn grep. Kết quả hiển thị hai dòng từ tệp văn bản có chúng tôi trong đó.

$nắm chặtwe one.txt



Vì vậy, trong ví dụ này, chúng tôi sẽ hiển thị các dòng trước và sau từ khớp cụ thể trong một số tệp văn bản. Vì vậy, bằng cách sử dụng cùng một tệp văn bản one.txt, chúng tôi đã khớp từ mà chúng tôi trong khi hiển thị 3 dòng trước nó như bên dưới. Lá cờ -B là viết tắt của Before. Đầu ra chỉ hiển thị 2 dòng trước dòng từ cụ thể vì tệp không có nhiều dòng trước dòng của một từ cụ thể. Nó cũng cho thấy những dòng có từ cụ thể đó hiện diện trong chúng.

$nắm chặt-NS3we one.txt

Hãy sử dụng cùng một từ khóa chúng tôi từ tệp này để hiển thị 3 dòng sau dòng có từ chúng tôi. Lá cờ -A trình bày Sau khi. Đầu ra lại chỉ hiển thị 2 dòng vì nó không có nhiều dòng hơn trong tệp.

$nắm chặt-ĐẾN3we one.txt

Vì vậy, chúng ta hãy sử dụng một từ khóa mới được so khớp và hiển thị các dòng hoặc hàng trước và sau dòng mà nó nằm. Vì vậy, chúng tôi đã được sử dụng từ có thể được kết hợp. Các số dòng giống nhau trong trường hợp này. 3 dòng sau từ phù hợp có thể được hiển thị bên dưới bằng cách sử dụng lệnh grep.

$nắm chặt-ĐẾN3one.txt có được không

Bạn có thể thấy kết quả hiển thị trước các dòng của một từ phù hợp bằng cách sử dụng từ khóa có thể. Ngược lại, nó chỉ hiển thị hai dòng trước dòng của từ đã so khớp vì không còn dòng nào trước nó.

$nắm chặt-NS3one.txt có được không

Ví dụ 02: Sử dụng ‘-A’ và ‘-B’

Hãy lấy một tệp văn bản khác, two.txt, từ thư mục chính và hiển thị nội dung của nó bằng lệnh cat bên dưới.

$con mèohai.txt

Hãy hiển thị 5 dòng trước từ Hầu hết từ tệp two.txt bằng cách sử dụng lệnh grep. Kết quả hiển thị 5 dòng trước dòng chứa một từ cụ thể.

$nắm chặt-NS5Hai.txt nhiều nhất

Lệnh grep để hiển thị 5 dòng sau từ Most từ tệp văn bản two.txt đã được đưa ra bên dưới.

$nắm chặt-ĐẾN5Hai.txt nhiều nhất

Hãy thay đổi từ khóa được tìm kiếm. Chúng tôi sẽ sử dụng làm từ khóa được kết hợp lần này. Hiển thị 2 dòng trước từ của từ tệp văn bản two.txt có thể được thực hiện bằng cách sử dụng lệnh grep dưới đây. Kết quả hiển thị hai dòng cho từ khóa của vì nó xuất hiện hai lần trong tệp. Như vậy đầu ra chứa nhiều hơn 2 dòng.

$nắm chặt-NS2trong tổng số hai.txt

Bây giờ việc hiển thị 2 dòng của tệp two.txt sau dòng chứa từ khóa của có thể được thực hiện bằng lệnh dưới đây. Đầu ra lại hiển thị nhiều hơn 2 dòng.

$nắm chặt-ĐẾN2trong tổng số hai.txt

Ví dụ 03: Sử dụng ‘-C’

Một cờ khác, -C đã được sử dụng để hiển thị các dòng trước và sau từ phù hợp. Hãy hiển thị nội dung của tệp one.txt bằng lệnh cat.

$con mèoone.txt

Chúng tôi chọn xã hội như một từ khóa được so khớp. Lệnh grep dưới đây sẽ hiển thị 2 dòng trước và 2 dòng sau dòng chứa từ xã hội trong đó. Kết quả hiển thị một dòng trước dòng từ cụ thể và 2 dòng sau nó.

$nắm chặt-NS2xã hội một.txt

Hãy xem nội dung của tệp two.txt bằng lệnh cat bên dưới.

$con mèohai.txt

Trong minh họa này, chúng tôi đang sử dụng các bài thơ làm từ khóa để đối sánh. Vì vậy, thực hiện lệnh dưới đây cho việc này. Kết quả hiển thị hai dòng trước và hai dòng sau từ phù hợp.

$nắm chặt-NS2bài thơ hai.txt

Hãy sử dụng thêm một từ khóa từ tệp hai.txt để được đối sánh. Chúng tôi đang sử dụng thiên nhiên như một từ khóa lần này. Vì vậy, hãy thử lệnh dưới đây trong khi sử dụng -C làm cờ có bản chất từ ​​khóa từ tệp two.txt. Lần này, đầu ra có nhiều hơn hai dòng trong đầu ra. Vì tệp chứa bản chất từ ​​nhiều lần, đó là lý do đằng sau nó. Bản chất từ ​​khóa, đứng trước, có hai dòng trước và hai dòng sau nó. Trong khi từ khóa thứ hai khớp với cùng một từ khóa, bản chất có hai dòng trước nó, nhưng không có dòng nào sau nó vì nó nằm ở dòng cuối cùng của tệp.

$nắm chặt-NS2bài thơ hai.txt

Phần kết luận

Chúng tôi thành công trong việc hiển thị các dòng trước và sau từ cụ thể trong khi sử dụng hướng dẫn grep.