Hoe linux-bestanden te vinden met de opdracht Locate of Find

Bij het werken, beheren en gebruiken van Linux-besturingssystemen kunnen we geconfronteerd worden met een nieuwe wereld die totaal verschilt van de traditionele in termen van taakuitvoering, wat ons in sommige situaties in de problemen kan brengen.
Een van de veel voorkomende taken is het zoeken naar elementen in het systeem en om te voorkomen dat we van bibliotheek naar bibliotheek gaan op zoek naar dat element, kunnen we onze toevlucht nemen tot de terminal en van daaruit het exacte pad weten waar het bestand of de map zich bevindt.

Door middel van deze tutorial zullen we twee van de meest gebruikte commando's voor dit doel analyseren: lokaliseren en zoeken.

1. Bestanden zoeken met behulp van de opdracht Locate in Linux


Het location-commando is de meest praktische manier om naar een bestand in Linux te zoeken, dit find-commando is verantwoordelijk voor het uitvoeren van zoekopdrachten met behulp van een database waarin alle informatie wordt gevonden en het rechtstreeks lokaliseren van de query ernaartoe.

Stap 1
Het pad van deze database is.

 /var/lib/mlocate/mlocate.db 
Stap 2
Het is praktisch en snel om de zoekopdracht uit te voeren met lokaliseren, aangezien de database alle bestandspaden in het systeem bevat zonder dat u elke partitie en elk bestandssysteem afzonderlijk hoeft te doorlopen.
Om de locatie-opdracht te installeren, kunnen we een van de volgende opties gebruiken:

Debian en Ubuntu

 sudo apt install Locate 

CentOS

 yum installeren lokaliseren 

Stap 3
Zodra Locate op het systeem is geïnstalleerd, gaan we de volgende opdracht uitvoeren om de database bij te werken:

 sudo bijgewerktb 
Stap 4
Met deze opdracht kunnen we de update van de database forceren, die standaard dagelijks wordt bijgewerkt.

Stap 5
Om lokaliseren te gaan gebruiken, gaan we naar de terminal en voeren lokaliseren uit gevolgd door de bestandsnaam waarnaar we op zoek zijn als volgt:

 zoek Solvetic 
Stap 6
Als resultaat zullen we de routes zien waar dit bestand zich bevindt:

Stap 7
De opdracht location kan weergeven hoe vaak een zoekwoord in de database overeenkomt, hiervoor gebruiken we de parameter -c in de opdracht, waarbij -c gelijk is aan het aantal:

 lokaliseren -c Solvetic 

OpmerkingIets om in gedachten te houden wanneer we het lokatie commando gebruiken, is dat we precies de naam van het bestand moeten weten, inclusief hoofdletters of kleine letters, anders zal het resultaat verkeerd zijn.

2. Hoe bestanden te vinden met behulp van de opdracht find in Linux


Het find-commando is ingebouwd in Linux-distributies, wat betere resultaten biedt, maar op prestatieniveau is het langzamer dan find, omdat find de schijven doorzoekt naar de bestanden en mappen die we hebben gespecificeerd.

Stap 1
Als we zeggen dat de opdracht find nuttiger is en betere resultaten oplevert dan lokaliseren, heeft dit te maken met redenen zoals:
U kunt zoeken naar bestanden die zijn gekoppeld aan een specifieke gebruiker of groep gebruikers.
U kunt zoeken naar bestanden die onlangs zijn gewijzigd of geopend.
Hiermee kunt u zoeken naar bestanden met een specifiek groottebereik, verborgen bestanden, uitvoerbare bestanden, alleen-lezen bestanden en bestanden met specifieke machtigingen.

Stap 2
Om het zoeken met het find-commando te optimaliseren, kunnen we het vertellen om in een specifieke map te zoeken, waardoor interactiviteit met onnodige paden wordt vermeden. Om dit commando te gebruiken kunnen we het volgende uitvoeren:

 sudo vinden. -naam "* Solvetic *" 
Stap 3
Dit resulteert in alle regels die het woord Solvetic bevatten:

Stap 4
Als we alle resultaten willen weergeven, ongeacht of deze in hoofdletters zijn of niet, moeten we de parameter -iname aangeven:

 sudo vinden. -iname "* Solvetic *" 
Stap 5
Met de opdracht find kunnen we naar een bestand zoeken op basis van de grootte, dus als we willen zoeken naar alle bestanden die minder dan 1 MB wegen, voert u gewoon het volgende uit:
 zoek ~ / -maat -1M 

Stap 6
Het is ook mogelijk om een ​​groottebereik als volgt op te geven:

 zoek / -maat -1M -en -maat + 2M 
Stap 7
Hiermee wordt gezocht naar alle bestanden kleiner dan 1 MB en groter dan 2 MB. Als u de naam van het bestand niet weet, maar rekening houdend met het feit dat we het in een eerder bereik van minuten hebben gemaakt, bijvoorbeeld 5 minuten geleden, kunnen we toegang krijgen tot de map waar het werd gehost en het volgende uitvoeren:
 vind / -amine -5 
Stap 8
Als resultaat zullen we alle bestanden zien die in de afgelopen 5 minuten zijn gemaakt:

Stap 9
We kunnen ook de bestanden doorzoeken die we in een aantal dagen hebben geopend, bijvoorbeeld 4 dagen geleden:

 vind / -tijd -4 
Stap 10
Om meer hulp van deze opdracht te krijgen, kunnen we het volgende uitvoeren:
 zoek -help 

We hebben dus praktische opties om elk bestand in Linux te lokaliseren.

wave wave wave wave wave