Banner top Trường Thịnh

1800 6025(0đ//Phút)

tìm cửa hàng

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

Website truongthinh.info có bài Cách sử dụng lệnh grep trên Debian 10Grep 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.

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

Trong bài viết này, Truongthinh.info sẽ hướng dẫn bạn cách dùng lệnh grep (có đi cùng biết bao ví dụ).

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

Bạn đã biết phương pháp sử dụng lệnh grep chưa?

  • Điều kiện tiên quyết
  • Cài đặt lệnh grep trên Debian 10
  • Sử dụng lệnh grep
    • Tìm kiếm một file hoặc thư mục cụ thể trong hệ thống
    • Tìm kiếm một từ hoàn tất với grep
    • Tìm kiếm một phần văn bản cụ thể trong 1 file
    • Thực hiện tìm kiếm trong nhiều file
    • Tìm kiếm hai từ không giống nhau bằng một lệnh grep duy nhất
    • Đánh số dòng thích hợp với văn bản
    • Đảo ngược kiếm tìm
    • Đếm các kết quả trùng hợp
    • Hiển thị tên file thích phù hợp với văn bản cụ thể
    • Chỉ hiển thị văn bản thích hợp
    • Hiển thị các dòng bắt đầu bằng (các) từ cụ thể
    • Hiển thị các dòng xong xuôi bằng (các) từ cụ thể

Đ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 đa số hệ thống cho dù là 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 theo với những 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 mong 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 | 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 như nó chứa khoảng trắng. Giả sử bạn đang kiếm tì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ũng có thể nhận thấy, grep đã trả về tất cả những loại kết quả có từ “network” , ví dụ: networks, networked, networking hoặc abcnetworking, v.v… Nếu bạn mong muốn giới hạn kiếm tìm của mình để kể cả từ cụ thể đó, bạn cần 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 mong muốn kiếm tì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 mong muốn tìm kiếm” “tên file và đường dẫn”  

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

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

  grep -i -r "fox"  

Dưới đây là đầu ra mẫu cho biết từ “fox” có trong cả hai file test.txt tree.txt :

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

Bạn cũng cũng có thể cung cấp một đường dẫn thư mục và nó sẽ kiếm tì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 nà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ông trùng lặp bằng một lệnh grep duy nhất

Bạn có thể kiếm tìm hai từ không trùng lặp bằng một lệnh egrep (là một biến thể của grep ) như sau. Giả sử bạn muốn kiếm tìm từ fox lazy 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 nà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ù phù hợp với văn bản

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

  grep -i -n "fox" test.txt  

Dưới nà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 thích 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 các gì ta đã làm ở trên. Nếu bạn mong muốn trả về một văn bản không kể cả từ bạn chỉ định, bạn cũng có thể có thể sử dụng tùy chọn -v.

Dưới đây là thí 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 kiếm tìm

Tất cả những 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 hợ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ũng 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 này là đầu ra mẫu sau khi thực hiện lệnh trên, cho biết 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 hợp

Hiển thị tên file thích 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 theo với -r như sau.

Giả sử mọi thứ 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 này là kết quả đầu ra mẫu cho biết từ “fox” có mặt trong test.txt , cũng giống trong thư mục con và file asif.txt :

Hiển thị tên file thích 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 thích 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ũng có thể có thể sử dụng tùy chọn -o như sau.

  grep -i -o fox test.txt  

Dưới nà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 mọi thứ các loại bắt đầu bằng một từ cụ thể, bạn cũng có thể sử dụng toán tử ^ như sau.

Giả sử bạn muốn trả về mọi thứ 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 loại bắt đầu bằng (các) từ cụ thể

Hiển thị các loại xong xuôi bằng (các) từ cụ thể

Nếu muốn trả về mọi thứ các dòng từ một file xong xuôi bằng (các) từ cụ thể, bạn cũng có thể 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 ở phía trong thư mục hiện hành.

Chạy lệnh sau terminal:

  grep -i "linux$" rev.txt  

Dưới nà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ể

Từ khóa bài viết: truongthinh.info, Debian, Debian 10, grep, lệnh grep, cách dùng lệnh grep, cách dùng lệnh grep trên Debian 10

Bài viết Cách sử dụng lệnh grep trên Debian 10 được tổng hợp và biên tập bởi: truongthinh.info. Mọi ý kiến đóng góp và phản hồi vui lòng gửi Liên Hệ cho truongthinh.info để điều chỉnh. truongthinh.info xin cảm ơn.