Thứ Bảy, 29 tháng 7, 2023

Top 10 cách dùng lệnh Grep trong Linux hay nhất

Hôm nay chúng ta sẽ tìm hiểu một câu lệnh cực kì hữu ích và mạnh mẽ, đó là lệnh Grep trong Linux. Grep Linux có chức là tìm kiếm chuỗi cho trước ở trong file.

Grep sẽ có sẵn trên các bản phân phối của Linux. Nếu máy bạn chưa có bạn có thể sử dụng lệnh sau:

sudo apt-get install grep

Bây giờ chúng ta sẽ đi vào những ví dụ thực tế để các bạn có thể hiểu rõ hơn nào.

Mục lục

  • 1. Grep Linux: tìm kiếm chuỗi ở trong file
  • 2. Grep Linux: tìm kiếm không phân chữ hoa / thường
  • 3. Grep Linux: tìm kiếm chuỗi trong nhiều file
  • 4. Grep Linux: đếm số lần xuất hiện của chuỗi trong file
  • 5. Grep Linux: tìm kiếm chuỗi trong tất cả các thư mục
  • 6. Grep Linux: tìm kiếm ngược
  • 7. Grep Linux: tìm kiếm chính xác chuỗi xuất hiện trong file
  • 8. Grep Linux: hiển thị số thứ tự từng dòng của kết quả
  • 9. Grep Linux: hiển thị ra danh sách các file có chứa chuỗi cần tìm kiếm
  • 10. Grep Linux: giới hạn số dòng output của lệnh grep

1. Grep Linux: tìm kiếm chuỗi ở trong file

Đây là lệnh cơ bản nhất và cũng thường được sử dụng nhất khi ta muốn tìm kiếm một chuỗi trong một file bất kì.

Bài viết này được đăng tại tranvanbinh.vn

grep "learn linux"  learn.txt
#Trong ví dụ này ta tìm kiếm chuỗi "learn linux" ở trong file learn.txt

Kết quả sẽ hiển thị ngay trên màn hình terminal theo dòng nào có chứa chuỗi "learn linux" ở trong file. Và dòng này sẽ được highlight.

2. Grep Linux: tìm kiếm không phân chữ hoa / thường

Trong một số trường hợp chúng ta muốn kiểm tra trong file liệu có chuỗi mà chúng ta cần tìm hay không , mà không phân biệt hoa thường thì chúng ta sử dụng thêm options -i.

grep -i "learn linux"

Trong ví dụ này thì chuỗi "LEARN LINUX" ở trong file cũng sẽ được tìm thấy. Vì nó không phân biệt hoa thường nữa.

3. Grep Linux: tìm kiếm chuỗi trong nhiều file

Ví dụ như chúng ta muốn tìm kiếm chuỗi "learn linux" nhưng ta ko nhớ rõ tên của file đó, mà ta chỉ nó file đó có đuôi là .txt.

Vậy ta sẽ tìm kiếm tất cả file bằng cách sau.

grep "learn linux"  *.txt
# kí tự * ở đây có nghĩa là bất kì file nào có đuôi là .txt sẽ đều được tìm kiếm.

4. Grep Linux: đếm số lần xuất hiện của chuỗi trong file

Ví dụ như ta có một file test.txt như sau.

unix is great os. unix is opensource. unix is free os

Bây giờ chúng ta muốn đếm số lần xuất hiện của chuỗi "unix" có trong file. Ta thực hiện như sau.

cat test.txt | grep -c "unix"

Kết quả sẽ trả về cho chúng ta là 3 trên màn hình terminal.

5. Grep Linux: tìm kiếm chuỗi trong tất cả các thư mục

Nếu bạn muốn tìm kiếm chuỗi trong một thư mục hiện tại , và nó có rất nhiều thư mục con ở trong đó thì cách tốt nhất để tìm kiếm không bị thiếu thư mục nào là chúng ta sử dụng options -r.

grep -r "learn linux"

6. Grep Linux: tìm kiếm ngược

Chúng ta có thể sử dụng grep để tìm kiếm tất cả những dòng không chứa chuỗi mà chúng ta muốn tìm kiếm.

grep -v "learn linux" learn.txt

Kết quả sẽ trả về cho chúng ta những dòng không chứa chuỗi "learn linux" trong file learn.txt

7. Grep Linux: tìm kiếm chính xác chuỗi xuất hiện trong file

Để tìm kiếm chính xác chữ mình muốn tìm trong file thì chúng ta sử dụng options -w có trong lệnh grep.

Sự khác nhau khi chúng ta sử dụng -w và không sử dụng -w đó là, nếu không sử dụng -w thì lệnh grep sẽ tìm kiếm tất cả những dòng có chứa chuỗi mà chúng ta tìm kiếm.

grep -w "linux" learn.txt

Kết quả sẽ hiển thị ra dòng có chứa chính xác chuỗi ra màn hình terminal .

8. Grep Linux: hiển thị số thứ tự từng dòng của kết quả

Đôi khi chúng ta sẽ muốn biết kết quả của chuỗi mà chúng ta tìm thấy nằm ở dòng thứ mấy trong file.

Để giải quyết vấn đề này chúng ta sử dụng lệnh grep với options -n.

grep -n "learn" linux.txt

9. Grep Linux: hiển thị ra danh sách các file có chứa chuỗi cần tìm kiếm

Ví dụ như chúng ta đang ở trong một có rất nhiều file , mà bây giờ chúng ta muốn tìm kiếm liệu file nào có chứa chuỗi "learn linux" ?? Thi chúng ta sử dụng lệnh grep với options -l sẽ giúp chúng ta liệt kê ra các file có chứa chuỗi "learn linux".

grep -l "learn linux" *

10. Grep Linux: giới hạn số dòng output của lệnh grep

Trong một số trường hợp output của lệnh grep mà chúng ta sử có quá nhiều , thì chúng ta muốn giới hạn số dòng mình muốn nhìn thấy thì thực hiện như nào?

Chúng ta sẽ sử dụng options -m có trong lệnh grep.

grep -m2 "learn linux" learn.txt
# 2 có nghĩa là số dòng mà bạn muốn nhìn thấy

Tổng kết: Trên là tổng hợp 10 ví dụ về lệnh Grep trong Linux hữu ích nhất, đây là những cách dùng rất phổ biến và được áp dụng rất nhiều trong quá trình quản trị Linux.

Vậy trong bài ngày hôm nay chúng ta đã học qua cách sử dụng lệnh grep cơ bản trong linux, hẹn gặp lại bạn ở bài tiếp theo.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master