Header ads

Header ads
» » Cách sử dụng lệnh grep trên Debian 10

Grep là viết tắt của Global Regular Expression Print. Đây là một lệnh hữu ích và được sử dụng rộng rãi bởi các kỹ sư hệ thống Linux, trong khi tìm kiếm một chuỗi hoặc các mẫu với những file thông thường và trong hệ thống.

Trong bài viết này, Quantrimang.com sẽ hướng dẫn bạn cách sử dụng lệnh grep (có kèm theo rất nhiều ví dụ).

Lưu ý: Bài viết đã thử nghiệm tất cả các lệnh và ví dụ trên máy chạy Debian 10.

Điều kiện tiên quyết

Bạn cần có một máy tính chạy Debian 10 có quyền root.

Cài đặt lệnh grep trên Debian 10

Theo mặc định, grep được cài đặt trên hầu hết hệ thống bao gồm Debian 10. Nếu nó chưa được cài đặt, hãy mở terminal và đưa ra lệnh sau với quyền root.

apt-get install grep

Khi bạn được yêu cầu xác nhận, nhấn Y và sau đó nhập từ bàn phím. Đợi quá trình cài đặt kết thúc.

Kiểm tra phiên bản của grep bằng cách chạy lệnh sau trên terminal.

grep --version

Lệnh sẽ trả về phiên bản cùng với các chi tiết khác như được hiển thị bên dưới.

Lệnh sẽ trả về phiên bản cùng với các chi tiết khác
Lệnh sẽ trả về phiên bản cùng với các chi tiết khác

Sử dụng lệnh grep

Tìm kiếm một file hoặc thư mục cụ thể trong hệ thống

Khi bạn muốn tìm kiếm hoặc định vị một file cụ thể trong hệ thống của mình, cú pháp của lệnh sẽ như sau.

ls -l <đường dẫn của thư mục muốn tìm kiếm> | grep -i "tên file hoặc thư mục"

Cần đặt từ bạn muốn tìm trong dấu ngoặc kép nếu nó chứa khoảng trắng. Giả sử bạn đang tìm kiếm "network daemon", lệnh sẽ giống như sau.

ls -l /etc/network/ | grep -i "interfaces daemon"

Tìm kiếm một từ hoàn chỉnh với grep

Bạn có thể nhận thấy, grep đã trả về tất cả các loại kết quả có từ "network", ví dụ: networks, networked, networking hoặc abcnetworking, v.v... Nếu bạn muốn giới hạn tìm kiếm của mình để bao gồm từ cụ thể đó, bạn phải sử dụng tùy chọn -w như sau.

ls -l /etc/ | grep -i -w network

Tìm kiếm một phần văn bản cụ thể trong một file

Giả sử bạn có một file lớn và bạn muốn tìm kiếm một phần văn bản cụ thể. Cú pháp của lệnh sẽ như sau.

grep – i "văn bản bạn muốn tìm kiếm" "tên file và đường dẫn"

Thực hiện tìm kiếm trong nhiều file

Nếu muốn tìm kiếm một văn bản từ một số lượng lớn file và thư mục con trong một thư mục lớn, bạn có thể thực hiện việc này bằng cách sử dụng tùy chọn -r.

grep -i -r "fox"

Dưới đây là đầu ra mẫu cho thấy từ "fox" có trong cả hai file test.txttree.txt:

Từ
Từ "fox" có trong cả hai file test.txt và tree.txt

Bạn cũng có thể cung cấp một đường dẫn thư mục và nó sẽ tìm kiếm tất cả các file trong thư mục đó và các thư mục con của nó.

Giả sử bạn muốn tìm "interfaces" trong /etc/ và các thư mục con của nó. Lệnh cần thực hiện như sau.

grep -i -r interfaces /etc/

Dưới đây là đầu ra mẫu:

Thực hiện tìm kiếm trong nhiều file
Thực hiện tìm kiếm trong nhiều file

Tìm kiếm hai từ khác nhau bằng một lệnh grep duy nhất

Bạn có thể tìm kiếm hai từ khác nhau bằng một lệnh egrep (là một biến thể của grep) như sau. Giả sử bạn muốn tìm kiếm từ foxlazy trong nhiều file bằng tùy chọn -r. Bạn phải chạy lệnh sau trên terminal.

egrep -w -r "fox|lazy"

Dưới đây là đầu ra mẫu:

Tìm kiếm hai từ khác nhau bằng một lệnh grep duy nhất
Tìm kiếm hai từ khác nhau bằng một lệnh grep duy nhất

Đánh số dòng phù hợp với văn bản

Một tùy chọn hữu ích khác là -n đánh số dòng phù hợp với văn bản. Sau đây là ví dụ minh họa cách sử dụng tùy chọn -n.

grep -i -n "fox" test.txt

Dưới đây là kết quả đầu ra mẫu cho việc đánh số các dòng khớp với từ "fox".

Đánh số dòng phù hợp với văn bản
Đánh số dòng phù hợp với văn bản

Đảo ngược tìm kiếm

Điều này trái ngược với những gì ta đã làm ở trên. Nếu bạn muốn trả về một văn bản không bao gồm từ bạn chỉ định, bạn có thể sử dụng tùy chọn -v.

Dưới đây là ví dụ minh họa việc sử dụng tùy chọn -v.

grep -v -i "fox" test.txt

Dưới đây là đầu ra mẫu:

Đảo ngược tìm kiếm
Đảo ngược tìm kiếm

Tất cả các tùy chọn trên (-n, v.v...) cũng có thể được áp dụng với tùy chọn -v.

Đếm các kết quả trùng khớp

Nếu muốn đếm số lượng kết quả phù hợp với một văn bản cụ thể, bạn có thể sử dụng tùy chọn -c.

Hãy đếm từ "fox" trong test.txt ở bên trong thư mục hiện hành. Chạy lệnh sau trên terminal:

grep -i -c fox test.txt

Dưới đây là đầu ra mẫu sau khi thực hiện lệnh trên, cho thấy từ "fox" đã xuất hiện 3 lần trong file test.txt.

Đếm các kết quả trùng khớp
Đếm các kết quả trùng khớp

Hiển thị tên file phù hợp với văn bản cụ thể

Nếu bạn muốn tìm ra các file chứa từ cụ thể của mình, bạn có thể sử dụng tùy chọn -l cùng với -r như sau.

Giả sử tất cả các file được đặt trong thư mục hiện hành và từ cụ thể bạn đang tìm kiếm là "fox".

grep -i -r -l fox

Dưới đây là kết quả đầu ra mẫu cho thấy từ "fox" có mặt trong test.txt, cũng như trong thư mục con và file asif.txt:

Hiển thị tên file phù hợp với văn bản cụ thể

Hiển thị tên file phù hợp với văn bản cụ thể
Hiển thị tên file phù hợp với văn bản cụ thể

Chỉ hiển thị văn bản phù hợp

Theo mặc định, grep hiển thị toàn bộ dòng phù hợp với văn bản hoặc từ bạn muốn. Nếu muốn grep hiển thị các từ phù hợp, bạn có thể sử dụng tùy chọn -o như sau.

grep -i -o fox test.txt

Dưới đây là đầu ra mẫu.

Chỉ hiển thị văn bản phù hợp
Chỉ hiển thị văn bản phù hợp

Hiển thị các dòng bắt đầu bằng (các) từ cụ thể

Nếu muốn truy xuất tất cả các dòng bắt đầu bằng một từ cụ thể, bạn có thể sử dụng toán tử ^ như sau.

Giả sử bạn muốn trả về tất cả các dòng bắt đầu bằng "unix" và file là log.txt nằm trong thư mục hiện hành.

Chạy lệnh sau trên terminal:

grep -i "^unix" log.txt

Dưới đây là đầu ra mẫu:

Hiển thị các dòng bắt đầu bằng (các) từ cụ thể
Hiển thị các dòng bắt đầu bằng (các) từ cụ thể

Hiển thị các dòng kết thúc bằng (các) từ cụ thể

Nếu muốn trả về tất cả các dòng từ một file kết thúc bằng (các) từ cụ thể, bạn có thể sử dụng toán tử $ như sau.

Giả sử từ này là "linux" và file bạn muốn tìm kiếm là rev.txt nằm trong thư mục hiện hành.

Chạy lệnh sau terminal:

grep -i "linux$" rev.txt

Dưới đây là đầu ra mẫu:

Hiển thị các dòng kết thúc bằng (các) từ cụ thể
Hiển thị các dòng kết thúc bằng (các) từ cụ thể

Khóa đào tạo Power BI phân tích báo cáo để bán hàng thành công
KHÓA HỌC LẬP TRÌNH PYTHON TỪ CƠ BẢN ĐẾN CHUYÊN NGHIỆP

Khóa học Lập trình Visual Foxpro 9 - Dành cho nhà quản lý và kế toán

Khóa học hướng dẫn về Moodle chuyên nghiệp và hay
Xây dựng hệ thống đào tạo trực tuyến chuyên nghiệp tốt nhất hiện nay.



Khóa học AutoIt dành cho dân IT và Marketing chuyên nghiệp

Khoá học Word từ cơ bản tới nâng cao, học nhanh, hiểu sâu


Khóa học hướng dẫn sử dụng Powerpoint từ đơn giản đến phức tạp HIỆU QUẢ
Khóa học Thiết kế, quản lý dữ liệu dự án chuyên nghiệp cho doanh nghiệp bằng Bizagi
 Khoa hoc hay
Khóa học Phân tích dữ liệu sử dụng Power Query trong Excel


Khóa học Phân tích dữ liệu sử dụng TableAU - Chìa khóa thành công!
Nhấn vào đây để bắt đầu khóa học


Khóa học Phân tích dữ liệu sử dụng SPSS - Chìa khóa thành công!

Khóa học "Thiết kế bài giảng điện tử", Video, hoạt hình 
kiếm tiền Youtube bằng phần mềm Camtasia Studio
Khóa học HƯỚNG DẪN THIẾT KẾ VIDEO CLIP CHO DÂN MARKETING CHUYÊN NGHIỆP
 Xây dựng website​​​​
HƯỚNG DẪN THIẾT KẾ QUẢNG CÁO VÀ ĐỒ HỌA CHUYÊN NGHIỆP VỚI CANVA
Hãy tham gia khóa học để trở thành người chuyên nghiệp. Tuyệt HAY!😲👍
 Khoa hoc hay
MICROSOFT ACCESS



GOOGLE SPREADSHEETS phê không tưởng
 Khoa hoc hay
Khóa hoc lập trình bằng Python tại đây

Hacker mũ trắng




Hãy tham gia khóa học để biết mọi thứ

Để tham gia tất cả các bài học, Bạn nhấn vào đây 
Khóa học sử dụng Adobe Presenter-Tạo bài giảng điện tử
 Khoa hoc hay

Khóa học sử dụng Edmodo để dạy và học hiện đại để thành công



Cập nhật công nghệ từ Youtube tại link: congnghe.hocviendaotao.com
Tham gia nhóm Facebook
Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com

About Học viện đào tạo trực tuyến

Xinh chào bạn. Tôi là Đinh Anh Tuấn - Thạc sĩ CNTT. Email: dinhanhtuan68@gmail.com .
- Nhận đào tạo trực tuyến lập trình dành cho nhà quản lý, kế toán bằng Foxpro, Access 2010, Excel, Macro Excel, Macro Word, chứng chỉ MOS cao cấp, IC3, tiếng anh, phần mềm, phần cứng .
- Nhận thiết kế phần mềm quản lý, Web, Web ứng dụng, quản lý, bán hàng,... Nhận Thiết kế bài giảng điện tử, số hóa tài liệu...
HỌC VIỆN ĐÀO TẠO TRỰC TUYẾN:TẬN TÂM-CHẤT LƯỢNG.
«
Next
Bài đăng Mới hơn
»
Previous
Bài đăng Cũ hơn