Suposem que esteu buscant un fitxer a Linux, però n'heu oblidat el nom. Només recordeu el contingut del fitxer. Com trobareu el fitxer en aquest cas? Bé, hi ha alguns mètodes útils que us ajudaran a trobar un fitxer que conté un text (o cadena) específic a Linux. La cadena ha de ser especificada per l'usuari. Per tant, fem una ullada als mètodes:
Mètodes per trobar tots els fitxers que contenen text específic (cadena) a Linux
Mètode 1: comanda grep
comanda grep a Linux que s'utilitza per cercar fitxers que continguin un text o una cadena específics. Per defecte, ens mostra les línies dels fitxers que contenen el text concret. Si hi afegim l'opció -l, l'ordre ens mostrarà tots els fitxers que contenen el text concret.
Exemple:
Suposem que tenim un directori que conté dos fitxers anomenats fitxer1.txt i fitxer2.txt.
Contingut del fitxer 1.txt:
protocol d'Internet smtp
This line contains text.>
Contingut de file2.txt:
Sree Ramanujan
You should learn Data Structures & Algorithms.>
Ara, utilitzarem l'ordre grep amb l'opció -l per cercar text en fitxers determinats situats dins del directori actual. Vegeu l'exemple següent:

Des de l'exemple anterior es pot dir clarament que l'ordre grep ha trobat correctament la cadena donada a file1.txt. Com a resultat, va mostrar el nom del fitxer a la pantalla.
També podem utilitzar l'opció -i per dir a grep que ignori el cas. Mireu l'exemple següent:

ordenació de llista java
A dalt, primer hem utilitzat l'ordre anterior, però la cadena donada és Text. Com que fitxer1.txt conté text, no text, no es té en compte. Aquí, l'operació de cerca es realitza tenint en compte el cas. A continuació, hem utilitzat l'opció -i. Com a resultat, s'ignora el cas i la cadena donada coincideix amb la que conté fitxer1.txt. Per tant, el nom del fitxer es mostra a la pantalla.
Una altra variació és utilitzar l'opció -r. Suggereix que grep cerqui la cadena donada al directori actual i els seus subdirectoris de forma recursiva. Mireu l'exemple següent:

file1.txt i file2.txt es troben a la carpeta de fitxers, no al directori actual, és a dir, a l'escriptori. Per tant, si no fem servir l'opció -r, no es trobaran fitxers amb cadenes coincidents perquè no existeixen al directori actual. Però vam utilitzar l'opció -r i també vam ometre els noms dels fitxers. Com a resultat, grep cerca cadenes coincidents no només al directori actual, sinó també als seus subdirectoris. Per tant, es troba file1.txt i es mostra a la pantalla.
Mètode 2: la combinació de l'ordre find i grep
trobar és una altra ordre útil a Linux. Combinarem find amb l'opció -type f per cercar fitxers i l'opció -exec per aplicar a grep als fitxers que es troben. Mireu l'exemple següent:

És evident que l'operació de cerca troba file1.txt ja que conté la cadena coincident. Per tant, el nom del fitxer es mostra a la pantalla.
emet sql
Mètode 3: cerqueu fitxers que continguin text específic amb mc
També podem cercar fitxers amb Midnight Commander (mc). Obriu l'aplicació i premeu Alt + Maj + ? per obrir el quadre de diàleg Cerca fitxer. Veureu un quadre d'inici a la part superior. Al quadre, escriviu el camí on hi ha els fitxers. A continuació, a sota del quadre de contingut, escriviu la cadena que voleu cercar. En el nostre cas, hem cercat text al directori Fitxers:

A continuació es pot veure clarament que l'operació de cerca ha trobat correctament file1.txt, que conté la cadena coincident.

Mètode 4: comanda ripgrep
ripgrep (escrit com a rg) és una ordre que es pot utilitzar com a alternativa a l'ordre grep. La implementació és la següent:

es troba file1.txt i, per tant, el nom del fitxer es mostra a la pantalla.
objecte java a json
Mètode 5: comanda ack
Una altra ordre que podem utilitzar és l'ordre ack. Aquí teniu la implementació:

file1.txt es troba correctament i es mostra a la pantalla.