Grep là một chương trình Unix nhỏ cho việc tìm kiếm các mẫu phù hợp. Bắt đầu như một chương trình Unix, nó có thể được tìm thấy trên Linux cũng như Mac và BSD. Nó có thể đọc chỉ là về bất kỳ văn bản, có nghĩa là nó có thể đọc đầu vào từ một lệnh khác, hoặc nó có thể mở và xem qua các tập tin trực tiếp. Grep cực kỳ hữu ích, đặc biệt là để xem qua các thư mục từ dòng lệnh.

Với điều đó, tại sao không thử một trong những ứng dụng phổ biến nhất cho Grep, tìm kiếm một tập tin trong một thư mục. Xem qua thư mục “~ / Downloads” của bạn để tìm bất kỳ hình ảnh “jpg” nào.

 ls ~ / Tải xuống | grep .jpg 

Grep sẽ liệt kê tất cả chúng ra và làm nổi bật phần “.jpg” vì đó là những gì bạn đã tìm kiếm.

Bạn ống đầu ra (với lệnh "|") của chỉ là về bất kỳ lệnh vào grep . Nếu bạn có một tệp văn bản thuần túy nằm xung quanh, hãy đưa nó ra và đưa kết quả vào Grep để tìm một từ cụ thể.

 cat file.txt | grep word 

Grep sẽ in ra bất kỳ dòng nào trong tệp chứa từ mà bạn yêu cầu nó tìm kiếm.

Quên vụ án

Các hệ thống giống Unix có phân biệt chữ hoa chữ thường, có nghĩa là “Ubuntu” hoàn toàn khác với “ubuntu”. Đó có thể là một nỗi đau khi tìm kiếm một thứ gì đó. Grep có một lá cờ để loại bỏ vấn đề. Thêm cờ -i vào tìm kiếm của bạn và Grep sẽ bỏ qua trường hợp.

 ls ~ / Tải xuống | grep -i Ubuntu 

Tìm kiếm trong Tệp

Nó sẽ không được tất cả những thuận tiện để cần cat mỗi khi bạn muốn tìm kiếm một tập tin. Trên thực tế, bạn không. Grep có thể tìm kiếm thông qua các tập tin. Vượt qua nó đường dẫn đến tập tin, và Grep sẽ làm phần còn lại.

 grep -i word /path/to/file.txt 

Tìm kiếm đệ quy

Grep có thể tìm kiếm thông qua nhiều hơn một tập tin hoặc thư mục cùng một lúc. Được cảnh báo, nếu bạn đang tìm kiếm tên tập tin, Grep sẽ tìm kiếm thông qua các tập tin theo mặc định, quá. Cờ -r báo cho Grep tìm kiếm đệ quy.

 ls ~ / Tải xuống | grep -r .deb 

Bạn cũng có thể ghép cặp này với các cờ khác. Bạn có thể muốn bao gồm cờ -I khi thực hiện các tìm kiếm đệ quy để giữ cho Grep không nhìn vào các tệp nhị phân.

 ls ~ / Tải xuống | grep -iI .deb 

Tìm đối diện

Bạn cũng có thể yêu cầu Grep tìm mọi thứ không chứa mẫu được chỉ định. Điều này sẽ tốt trong trường hợp bạn cần tìm lỗi hoặc bạn có một thư mục chứa nhiều tệp của một hoặc hai loại.

 grep -rv '192.168.1.110' / etc / nginx 

Từ và dòng

Cũng có thể hữu ích khi yêu cầu Grep tìm kiếm các từ hoặc dòng hoàn chỉnh, thay vì bất kỳ thứ gì có chứa một mẫu nhất định. Hãy tưởng tượng bạn đang tìm kiếm một chuỗi các ký tự phổ biến như là một phần của một từ, nhưng bạn cần nó để tách biệt. Ví dụ, từ "nó" Rõ ràng, sẽ không có nhiều lần bạn thực sự muốn tìm kiếm một mẫu như "nó", nhưng nó chứng minh quan điểm.

 cat textfile.txt | grep -w 

Thay vì in ra mọi từ có chứa mẫu, Grep sẽ chỉ in từ đó. Nó thực hiện điều tương tự cho toàn bộ dòng với cờ -x, vì vậy nếu bạn đang tìm kiếm một cụm từ hoặc một dòng trong tệp cấu hình, điều đó thực sự có thể hữu ích.

Nếu bạn quan tâm đến việc điều tra mọi thứ mà Grep có thể làm, hãy chạy man grep trong một thiết bị đầu cuối cho tài liệu hoàn chỉnh. Bài viết này trình bày các khái niệm cơ bản và mọi thứ bạn thường cần từ công cụ mạnh mẽ này. Chia sẻ với chúng tôi nếu bạn biết về bất kỳ cách sử dụng mạnh mẽ nào của lệnh Grep.

Hình ảnh tín dụng: Shell kịch bản điểm quan tâm đến tọa độ