Quality VPS and Dedicated Servers at Incredible Prices

Grep command Linux – Hướng dẫn sử dụng lệnh Grep

Về Grep Command

 

Grep là từ viết tắt của Global Regular Expression Print. Lệnh grep trong Linux được sử dụng để tìm kiếm một chuỗi ký tự trong một file được chỉ định. Lệnh grep trong Linux sẽ rất tiện lợi khi tìm kiếm các file log lớn.

 

Grep command là một lệnh đắc lực nhất trong các máy hệ Unix. Nó có khả năng tìm kiếm chính xác thông tin bạn cần trong file text. Bạn có thể tìm từ hoặc tìm theo mẫu bằng lệnh grep và các thông tin liên quan sẽ được in ra.

 

Ban đầu, nó là một lệnh và một công cụ nhỏ, tuy nhiên, sysadmin vốn cần xử lý nhiều dịch vụ thông qua file cấu hình khác nhau đã sử dụng nó để truy vấn và tìm chính xác các bản ghi họ cần bằng lệnh nay nên nó là lệnh gần như không thể thay thế.

 

Hệ điều hành Linux thường không có giao diện người dùng vì lý do an toàn. Trong trường hợp này, việc biết cách dùng Linux terminal là rất quan trọng để có thể quản lý được máy tính. Đó là lý do những lệnh như grep command tỏ ra vô cùng hiệu quả.

 

 

 

Cách sử dụng Grep Command

 

 

Đầu tiên bạn cần kết nối vào VPS bằng SSH. ANTOANDULIEU đã có bài hướng dẫn dùng PuTTy SSH các bạn có thể đọc tại đây

 

Nếu bạn chưa có máy chạy Linux OS, bạn có thể lựa chọn máy do ANTOANDULIEU cung cấp tại đây.

 

Nếu bạn đang chạy Linux trên máy tính chỉ cần mở terminal ra.

 

Cấu trúc grep command sẽ để tìm một file như sau:

grep [options] parttern [FILE] 

 

grep – chỉ định lệnh grep

[options] – tùy chọn của lệnh

pattern – truy vấn cần tìm

[FILE] – file thực hiện tìm kiếm

 

Bạn có thể xem tài liệu hướng dẫn dùng lệnh và các tùy chọnk hác nhau bằng cách thực thi dòng này:

grep -help

 

Như bạn thấy, lệnh này có thể làm được nhiều việc. Những tùy chọn quan trọng nhất của nó là:

 

-i – tìm kiếm không quan trọng hoa thường. Nếu bạn muốn tìm từ “car” bạn có thể thấy kết quả của cả từ “CAR”

-c – nó sẽ hiện số dòng khớp với mẫu tìm kiếm

-r – tìm theo kiểu đệ quy trong thư mục hiện hành

-n – tìm dòng và tìm thông tin khớp với số dòng

-v – với tùy chọn này, chúng ta hiển thị dòng không khớp với mẫu cần tìm

 

Một số ví dụ grep hữu dụng

 

 

Tìm từ trong file text

 

Tìm từ trong file text, chỉ cần gõ lệnh sau:

grep query file

 

query – từ bạn cần tìm

file – file cần tìm

 

Trong trường hợp của chúng tôi, chúng tôi tìm từ inter trong một file gọi là folder

grep inter folder

 

 

Tìm từ mà bỏ qua các chữ viết hoa

 

Để làm vậy, bạn cần thêm option -i.

grep -i query file 

Đếm số lượng từ khóa cần tìm

 

Với lệnh grep, bạn có thể đếm một từ xuất hiện bao nhiêu lần trong file text. Chỉ cần thêm option -c.

grep -c query file

 

Tìm nhiều từ khóa khác nhau

 

Bạn đã thấy khá nhiều ví dụ về tìm một từ. Vậy lệnh tìm nhiều từ khác nhau sẽ như sau:

grep query1 file | grep query2 file

 

Lệnh này rất đơn giản. Đầu tiên, chúng ta tìm Query1 and then we pass through the pipe to a second grep command for the second word – Query2.

 

Tìm một từ trong nhiều file

 

Bạn cũng có thể tìm trong nhiều file một lúc trong chỉ một lệnh:

grep -l word_to_search ./*

Vậy với grep command, bạn có thể làm việc dễ dàng hơn nhiều với các file văn bản. Vì vậy grep được xem là công cụ linh hoạt với nhiều ứng dụng khác nhau

 

Tìm tên file bằng tiện ích mở rộng

 

Để có danh sách tất cả các file MP3 trong thư mục ~/Music:

grep ls ~/Music/ | grep ".mp3"

 

Bạn có thể thay thế .mp3 bằng bất kỳ phần mở rộng nào khác để định vị các file cụ thể. Lệnh sau liệt kê tất cả các file php có trong thư mục hiện hành.

grep ls | grep ".php"

 

Tìm số điện thoại bằng Grep

 

Bạn có thể sử dụng biểu thức chính quy grep để lọc số điện thoại từ file văn bản. Lưu ý rằng bạn phải điều chỉnh mẫu để phù hợp với loại số điện thoại bạn cần.

grep '\(([0-9]\{3\})\|[0-9]\{3\}\)[ -]\?[0-9]\{3\}[ -]\?[0-9]\{4\}' query file

 

Tìm địa chỉ email

 

Bạn cũng có thể liệt kê các địa chỉ email từ những file văn bản bằng lệnh grep Linux. Ví dụ sau thực hiện điều này bằng cách tìm kiếm một mẫu biểu thức chính quy (regular expression).

grep '^[a-zA-Z0-9]\+@[a-zA-Z0-9]\+\.[a-z]\{2,\}' query file

Tìm URL từ file nguồn

 

Bạn có thể tận dụng sức mạnh của grep để liệt kê các URL được tìm thấy trong file văn bản.

grep -E "^(http|https|ftp):[\/]{2}([a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4})" query file

 

Ví dụ sẽ lại sử dụng tùy chọn -E cho các biểu thức chính quy mở rộng. Bạn cũng có thể sử dụng lệnh egrep để tránh thêm điều này.

egrep "^(http|https|ftp):[\/]{2}([a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4})" query file

 

 

ANTOANDULIEU Là nhà cung cấp dịch vụ máy chủ ảo VPS, nếu bạn cần một máy tính chạy hệ điều hành Linux để phục vụ cho học tập, công việc, nghiên cứu của mình bạn có thể chọn lựa máy chủ ảo để tiết kiệm chi phí.

 

Liên hệ với chúng tôi để biết thêm thông tin chi tiết về dịch vụ

 

Website: https://antoandulieu.com

 

Fanpage:https://www.facebook.com/interdata.com.vn 

 

Email: [email protected]

 

Hotline: 1900 63 68 22

 

 

ANTOANDULIEU – Nhà cung cấp giải pháp và tư vấn dịch vụ VPS, Cloud Sever hàng đầu Việt Nam