Bật mí cách dùng lệnh Grep trong Linux

Mã tin: 2531129 - Lượt xem: 95 - Trả lời: 0
Đặt tin VIP ngày: Soạn CV3 2531129 gửi 8777 (15k/sms. Mỗi tin + 24 giờ)
Đặt tin VIP tháng? Bấm vào đây
  1. Linh vattubk
    Thành viên mới Tham gia: 04/05/2016 Bài viết: 1.793 Điện thoại: 0963237535
    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

    Sử dụng lệnh grep trong Linux

    Lệnh grep bao gồm ba phần ở dạng cơ bản nhất của nó. Phần trước tiên sẽ bắt đầu bằng grep, sau đó là mẫu bạn tìm kiếm. Sau chuỗi là tên file mà grep sẽ phải kiếm tìm.

    Cú pháp lệnh grep trong Linux đơn giản nhất sẽ như sau:

    Lệnh sẽ có thể chứa nhiều tùy chọn, biến thể mẫu và tên file. Phối hợp nhiều tùy chọn nếu cần để có được kết quả bạn muốn. Dưới đây là các lệnh grep trong Linux phổ biến nhất và đi kèm với các thí dụ.

    Dùng lệnh grep trong Linux để kiếm tìm một file

    Để in bất kỳ dòng nào từ file có chứa một mẫu ký tự cụ thể, trong trường hợp này là Phoenix trong file sample2, hãy chạy lệnh:

    grep phoenix sample2

    Bash

    Grep sẽ hiển thị mọi dòng có kết quả ăn nhập với từ Phoenix. Khi thực hiện lệnh này, bạn không nhận được kết quả thích hợp chính xác. Thay vào đó, thiết bị đầu cuối in các dòng có các từ chứa chuỗi ký tự bạn đã nhập. Đây là một ví dụ:

    Lưu ý: Nếu mẫu kiếm tìm của bạn bao gồm các ký tự không phải chữ và số, hãy sử dụng dấu ngoắc kép. Điều này bao gồm các khoảng trống hoặc bất kỳ ký hiệu nào.

    Dùng lệnh grep trong Linux để tìm kiếm nhiều file

    Để tìm kiếm nhiều file bằng lệnh grep, hãy chèn các tên file bạn muốn kiếm tìm, được ngăn cách bằng ký tự khoảng trắng.

    >>> Xem thêm: máy chủ super micro 813



    Trong trường hợp này, lệnh rep để khớp với từ Phoenix trong ba file sample, sample 2 và sample 3 trông giống như tỉ dụ sau:

    Bash

    Thiết bị đầu cuối in ra tên của mọi file chứa các dòng phù hợp và các dòng phải bao gồm chuỗi ký tự bắt buộc.

    Bạn có thể kết nối bao nhiều tên file nếu bạn cần. Thiết bị đầu cuối sẽ in ra một dòng với tên file cho mọi kết quả khớp mà nó tìm thấy trong các file được liệt kê.

    Dùng lệnh grep trong Linux để tìm kiếm tất cả các file trong thư mục

    Để kiếm tìm tất cả các file trong thư mục ngày nay, hãy sử dụng dấu hoa thị thay vì tên file ở cuối lệnh grep.

    Trong ví dụ này, chúng tôi sử dụng nix làm tiêu chí tim kiếm:

    grep nix *

    Bash

    Output hiển thị tên của file bằng nix và trả về toàn bộ các dòng.

    Dùng lệnh grep trong Linux để tìm toàn bộ các từ

    Lệnh grep chỉ cho phép bạn tìm và in kết quả cho toàn bộ từ. Để tìm kiếm từ Phoenix trong tất cả các file trong thư mục hiện tại, hãy thêm -w vào lệnh grep.

    grep -w phoenix *

    Bash

    >>> Xem thêm: sửa chữa máy chủ



    Tùy chọn này chỉ in các dòng có kết quả khớp toàn bộ từ và tên của các file mà nó tìm thấy:

    Khi bỏ qua -w, grep sẽ hiển thị mẫu tìm kiếm ngay cả khi nó là một chuỗi con của một từ khác.

    Nếu bạn muốn tìm kiếm nhiều chuỗi và các mẫu từ, hãy xem bài viết của chúng tôi về cách grep cho nhiều chuỗi, mẫu hoặc từ.

    Dùng lệnh grep trong Linux để tìm kiếm thư mục con

    Để bao gồm tất cả các thư mục con trong một tìm kiếm, hẫy thêm -r vào lệnh grep.

    grep -r phoenix *

    Bash

    lenh-grep-trong-linux

    Lệnh này in các kết quả ăn nhập cho tất cả các file trong thư mục hiện tại, thư mục con và đường dẫn xác thực với tên file. Trong tỉ dụ dưới đây, chúng tôi đã thêm -w để hiển thị toàn bộ các từ, nhưng output nó sẽ giống nhau.

    kiếm tìm grep ngược

    Bạn có thể sử dụng grep để in tất cả các dòng không khớp với một mẫu ký tự cụ thể. Để tìm kiếm grep ngược, hãy thêm -v vào lệnh grep.

    Để loại trừ tất cả các dòng có chứa phoenix, hãy nhập:

    grep -v phoenix sample

    Bash

    Thiết bị đầu cuối in ra tất cả các dòng không chứa từ được sử dụng làm tiêu chí kiếm tìm. Sử dụng -i để bỏ qua chữ hoa chữ thường để loại trừ hoàn toàn từ được sử dụng cho tìm kiếm này:

    Dùng lệnh grep trong Linux để hiển thị các dòng khớp chuẩn xác với chuỗi kiếm tìm

    Lệnh grep in toàn bộ dòng khi nó tìm thấy kết quả trùng khớp với một file. Để chỉ in những dòng hoàn toàn khớp với chuỗi tìm kiếm, hãy thêm tùy chọn -x.

    grep -x “phoenix number3” *

    Bash

    Output chỉ hiển thị các dòng khớp chính xác. Nếu có bất kỳ từ hoặc ký tự nào khác trong cùng một dòng, grep sẽ không đưa nó vào kết quả kiếm tìm. Đừng quên sử dụng dấu ngoặc kép bất cứ khi nào có khoảng trắng hoặc ký hiệu trong mẫu kiếm tìm.
    #1
backtop