Bạn có muốn tìm một tệp có nội dung là một văn bản cụ thể không?

Búp bê có kính lúp

Một số đã hỏi tôi về một chức năng mà các phiên bản mới nhất của Microsoft Windows có trong đó bạn có thể sử dụng công cụ tìm kiếm của họ để tìm, không chỉ các tệp có tên nhất định, mà bạn còn có thể bao gồm một văn bản để tìm các tệp bao gồm văn bản như vậy, chẳng hạn như PDF, tài liệu Microsoft Office, tệp văn bản .txt, v.v. Bạn nên biết rằng trong bản phân phối GNU / Linux của mình, bạn có thể làm điều đó và hơn thế nữa.

Chúng tôi đã thực hiện các hướng dẫn nhỏ trong LxA về các lệnh như tìm, tìm, định vị, v.v. Bây giờ chúng tôi sẽ cho bạn biết một cách để tạo lại chức năng này mà tôi đã nói trong đoạn đầu tiên từ bảng điều khiển của bạn. Như tôi đã nói Linux cực kỳ linh hoạt và có các công cụ khác nhau để tìm mọi thứ, ở đây chúng tôi sẽ chỉ cho bạn một số cách khác nhau mà bạn có thể sử dụng để tìm kiếm các tệp trong đó tìm thấy một văn bản hoặc chuỗi nhất định: Để tìm kiếm một từ hoặc chuỗi trong các tệp của một thư mục, bạn có thể sử dụng:

grep -s hola /home/*

grep -R hola /home/*

grep -Rw hola /home/*

Trong ví dụ trước, chúng ta sẽ tìm từ "hello" trong thư mục / home trong tất cả các tệp tồn tại. Trong trường hợp đầu tiên, với tùy chọn -s, một tìm kiếm không đệ quy được thực hiện, trong khi với -R, nó trở thành đệ quy, vì vậy nếu có các thư mục con bên trong, nó cũng sẽ tìm kiếm ở đó ... Nhưng hãy cẩn thận, điều đó sẽ tìm kiếm tất cả nội dung với chuỗi này «xin chào», Do đó, nếu có một cụm từ hoặc từ như "xin chào", nó cũng sẽ coi nó là hợp lệ và hiển thị các tệp có chứa từ này, nghĩa là nó không tìm kiếm từ đó theo một cách cụ thể. Để làm cho nó cụ thể, bạn có thể sử dụng tùy chọn thứ ba.

Hãy nhớ rằng nó sẽ thực hiện các tìm kiếm phân biệt chữ hoa chữ thường, vì vậy các ví dụ trước sẽ bỏ qua những thứ như Xin chào, HELLO, holA, v.v. Để tạo ra một tìm kiếm và bỏ qua trường hợp, thì bạn có thể sử dụng tùy chọn -i.

Hãy tưởng tượng rằng bạn muốn thực hiện tìm kiếm ngược lại, nghĩa là tất cả các tệp đó ở đâu không bao gồm một chuỗi hoặc từ riêng. Bạn có thể? Sự thật là có, ví dụ:

grep -Rlv hola /home/*

grep --exclude-dir= /home/Desktop -Rlv /home/*

Trong ví dụ đầu tiên, nó sẽ hiển thị toàn bộ danh sách các tệp không chứa từ "xin chào", trong khi trong trường hợp thứ hai, nó sẽ làm tương tự nhưng các tệp được tìm thấy sẽ bị loại trừ được lưu trữ trong / home / Desktop… Nhân tiện, tùy chọn này –exclude-dir = cũng có thể được sử dụng trong các ví dụ đầu tiên…


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   James Vigo dijo

    Grazas trên isto.