Lệnh "grep" nâng cao trong Linux [11 ví dụ]

Bạn đã từng gặp tình huống cần tìm kiếm một chuỗi, từ hoặc mẫu trong một tệp chưa? Nếu có, thì tiện ích grep là một công cụ hữu ích trong tình huống như vậy.

grep là một tiện ích dòng lệnh để tìm kiếm dữ liệu văn bản thuần túy cho các dòng phù hợp với biểu thức chính quy. Nếu chia từ grep thành như g/re/p thì ý nghĩa của grep là (tìm kiếm toàn cục một biểu thức chính quy và in ra) nghĩa là tìm kiếm mẫu từ tệp và in ra dòng trên màn hình, tức là đầu ra tiêu chuẩn.

Trong bài viết này, tôi sẽ giải thích các lệnh nâng cao về grep cho các Lớp ký tự trong hệ điều hành Linux và Unix tương tự.

Ở đây tôi coi tecmint.txt là tệp gốc nơi chúng ta sẽ tìm kiếm mẫu với sự trợ giúp của lệnh grep trong bài viết này để giải thích.

1. Tìm kiếm các ký tự chữ số chữ cái

Nếu bạn có hàng ngàn dòng trong một tệp và muốn tìm kiếm một dòng chỉ bắt đầu từ chữ cái A-Z, a-z và 0-9 (các ký tự chữ số chữ cái).

$ grep "^[[:alnum:]]" tecmint.txt
Grep - Tìm kiếm các ký tự chữ số chữ cái trong tệp

2. Tìm kiếm các ký tự chữ cái

Tương tự như các tùy chọn khác, nếu bạn muốn tìm kiếm một dòng chỉ bắt đầu từ [A-Z & a-z] tức là các ký tự chữ cái.

$ grep "^[[:alpha:]]" tecmint.txt
Grep - Tìm kiếm các ký tự chữ cái trong tệp

3. Tìm kiếm các ký tự trống

Tùy chọn khác nếu bạn muốn tìm kiếm một dòng chỉ bắt đầu từ [Tab & Space] tức là Ký tự trống.

$ grep "^[[:blank:]]" tecmint.txt
Grep - Tìm kiếm khoảng trống hoặc Tab trong tệp

4. Tìm kiếm các ký tự số

Tùy chọn số cho grep cũng rất hữu ích để tìm kiếm một dòng chỉ bắt đầu từ số [0-9] tức là Ký tự số.

$ grep "^[[:digit:]]" tecmint.txt
Grep - Tìm kiếm các ký tự số trong tệp

5. Tìm kiếm các ký tự thường

Tùy chọn khác cho grep là tìm kiếm một dòng chỉ bắt đầu từ các chữ cái thường tức là [a-z] (Các chữ in thường).

$ grep "^[[:lower:]]" tecmint.txt
Grep - Tìm kiếm các chữ cái thường trong tệp

6. Tìm kiếm các ký tự dấu câu

Các ký tự dấu câu cho grep là tìm kiếm một dòng chỉ bắt đầu từ [! ” # $ % & ‘ ( ) * + , – . / : ; ? @ [ \ ] ^ _ ` { | } ~.] tức là Ký tự dấu câu.

$ grep "^[[:punct:]]" tecmint.txt
Grep - Tìm kiếm các ký tự dấu câu trong tệp

7. Tìm kiếm các ký tự đồ họa

Grep cũng được sử dụng để tìm kiếm một dòng chỉ bắt đầu từ Các ký tự chữ số chữ cái và dấu câu gọi là Ký tự đồ họa.

$ grep "^[[:graph:]]" tecmint.txt
Grep - Tìm kiếm các ký tự đồ họa trong tệp

8. Tìm kiếm các ký tự có thể in

Tương tự như Ký tự đồ họa, grep rất hữu ích để tìm kiếm một dòng chỉ bắt đầu từ Các ký tự chữ số chữ cái, dấu câu và khoảng trống

$ grep "^[[:print:]]" tecmint.txt
Grep - Tìm kiếm các ký tự có thể in trong tệp

9. Tìm kiếm các ký tự khoảng trống

Grep cũng có khả năng tìm kiếm một dòng chỉ bắt đầu từ [tab, newline, vertical tab, form feed, carriage return và space] tức là Ký tự khoảng trống.

$ grep "^[[:space:]]" tecmint.txt
Grep - Tìm kiếm các ký tự khoảng trống trong tệp

10. Tìm kiếm chữ cái viết hoa

Tùy chọn khác trong grep cũng được sử dụng để tìm kiếm một dòng chỉ bắt đầu từ [A-Z] tức là Chữ cái viết hoa.

$ grep "^[[:upper:]]" tecmint.txt
Grep - Tìm kiếm chữ cái viết hoa trong tệp

11. Tìm kiếm các chữ số thập lục phân

Grep tìm kiếm một dòng chỉ bắt đầu từ [0-9, A-F và a-f] tức là Các chữ số thập lục phân.

$ grep "^[[:xdigit:]]" tecmint.txt
Grep - Tìm kiếm các chữ số thập lục phân trong tệp

Tôi đã giải thích về các chức năng nâng cao của grep - một công cụ mạnh mẽ và hữu ích để tìm kiếm mẫu trong một tệp. Grep cũng là một công cụ quan trọng cho viết kịch bản shell và các nhà lập trình để tìm kiếm mẫu trong các chương trình. Đáng để hiểu rõ về các tùy chọn và cú pháp khác nhau để tiết kiệm thời gian.

Trong trường hợp có vấn đề với các lệnh đã được giải thích trong bài viết, bạn có thể gửi bình luận của bạn trong phần bình luận bên dưới.