Lọc cơ bản với grep

Một trong những lệnh tôi sử dụng nhiều nhất trong terminal là grep, thậm chí nhiều hơn cd o ls.

grep Nó có nhiều tùy chọn và cung cấp các khả năng khác nhau, tuy nhiên tôi sử dụng cách thông thường nhất có thể, nhưng hãy bắt đầu bằng cách giải thích Grep là gì?

grep chỉ đơn giản là một bộ lọc, nó là một lệnh hiển thị các dòng phù hợp với bộ lọc mà chúng ta đã khai báo.

Ví dụ: trong hệ thống của chúng tôi, chúng tôi có tệp / usr / share / doc / bash / FAQ và nội dung của tệp này là:

Xem nội dung tệp

Nếu bạn muốn liệt kê nội dung trong terminal bằng lệnh làm sao (vâng mèo, như mèo hehe) họ có thể làm được:

cat /usr/share/doc/bash/FAQ

Bây giờ, giả sử chúng tôi chỉ muốn liệt kê dòng của tệp đó nói về phiên bản, đối với điều này, chúng tôi sử dụng grep:

cat /usr/share/doc/bash/FAQ | grep version

Đặt nó trong terminal sẽ chỉ hiển thị cho bạn dòng có chứa "phiên bản" trong tệp đó, nó sẽ không hiển thị bất kỳ dòng nào không chứa từ đó nữa.

Điều gì sẽ xảy ra nếu tôi muốn hiển thị mọi thứ ngoại trừ dòng phiên bản?

Đó là, theo cách mà tôi đã giải thích cho bạn, mọi thứ phù hợp với bộ lọc sẽ được hiển thị, bây giờ tôi sẽ chỉ cho bạn cách làm cho mọi thứ hiển thị ngoại trừ những gì phù hợp với bộ lọc:

cat /usr/share/doc/bash/FAQ | grep -v version

Bạn có nhận thấy sự khác biệt? ... chỉ cần thêm -v Nó đã tạo nên sự khác biệt rồi 

Vì vậy, nếu họ đặt grep nó sẽ chỉ hiển thị cho bạn những gì phù hợp với bộ lọc, nhưng nếu bạn đặt grep -v nó sẽ hiển thị cho bạn mọi thứ ngoại trừ bộ lọc.

Chà, bài viết này đã kết thúc, chỉ là một mẹo khác có thể bị đánh giá thấp nhưng... bạn không biết grep có thể hữu ích như thế nào đâu, nó thực sự là một cứu tinh 

Liên quan


Thêm vào danh sách nguồn ưu tiên trên Google.