een veel voorkomend probleem is dat u de bestanden die u ergens hebt geplaatst niet kunt vinden. Tijdens het werken onder Linux, ongeacht de distributie, veel GUI opties kunt u zoeken naar uw bestanden. In veel gevallen heb je echter alleen de opdrachtregel terminal, vooral als je servers beheert of SSH gebruikt om toegang te krijgen tot het systeem. Als je je bestanden niet kunt vinden, moet je ernaar zoeken met behulp van command line applicaties op Linux.
Dit artikel laat u zien hoe u bestanden kunt vinden met de Terminal die de opdrachtregeltoepassing is in Ubuntu OS., Er zijn drie bekende methoden om naar bestanden op de shell te zoeken:
- Met behulp van zoekopdracht
- met behulp van zoekopdracht
- met behulp van Grep Commando
Zoek en zoek commando ‘ s worden gebruikt om naar bestanden in het systeem te zoeken, terwijl grep wordt gebruikt om bestanden te zoeken gebaseerd op de tekst die het bevat. Find is een langzamere methode, maar bevat verschillende zoekvoorwaarden, terwijl Locate niet zo veel voorwaarden bevat, maar veel sneller is dan de Find.
laten we beginnen met de procedure. We zullen Ubuntu 18.04 LTS gebruiken voor het beschrijven van de in dit artikel genoemde procedure.,
Methode 1: het gebruik van Find Commando
Find is een zeer flexibel commando dat gebruikt wordt om bestanden te zoeken op basis van een verscheidenheid aan voorwaarden. Het is een zeer nuttig hulpmiddel bij het zoeken naar een bestand waarvoor u de naam van het bestand niet meer weet. Met de opdracht Zoeken kunt u zoeken op basis van bestand-en mapnaam, aanmaakdatum, wijzigingsdatum en machtigingen. U kunt deze meerdere voorwaarden combineren in een one Find Commando. Het is een zeer krachtige maar langzamere zoekmachine.,
de algemene syntaxis van het commando is:
$ find /path/to/file/ -iname filename
zoek bestanden in een specifieke map
u kunt het commando zoeken gebruiken om naar alle bestanden in een specifieke map te zoeken., De algemene syntax is:
$ find /path/to/file/
bijvoorbeeld, om alle bestanden in de /home/tin/Downloads/ directory, start de Terminal door te drukken op Ctrl+Alt+T en dan voer je het volgende commando in Terminal:
$ find /home/tin/Downloads/
het Zoeken van bestanden in de huidige directory
om Te zoeken naar bestanden in de huidige directory, gebruik
$ find .
om Te zoeken naar een bestand met de naam e.,g “software” onder de huidige map, gebruik het volgende commando in Terminal:
$ find . -iname Softwares
zoeken met een joker
U kunt ook de jokertekens gebruiken om de bestanden te vinden die overeenkomen met de query. De algemene syntaxis zou zijn:
$ find /path/to/file/ -iname filename*
om bijvoorbeeld bestanden te zoeken die beginnen met het woord “cent”, voer je het volgende commando uit in Terminal:
$ find /home/tin/ -iname cent*
zoeken naar lege bestanden
U kunt ook zoeken voor lege bestanden met behulp van de opdracht find., De algemene syntaxis zou zijn:
$ find /path/to/file/ -iname -empty
bijvoorbeeld om lege bestanden te vinden onder de map /home/tin, voer je het volgende commando uit in Terminal:
$ find /home/tin/ -empty
zoeken op basis van datum en tijd
met de opdracht Zoeken kunt u ook naar bestanden zoeken, afhankelijk van wanneer ze zijn geopend of gewijzigd. Er zijn soorten tijd die u kunt gebruiken om bestanden te doorzoeken:
- mtime (Modificatietijd): wanneer de inhoud van het bestand de laatste keer is gewijzigd.
- atime (toegangstijd): wanneer het bestand de laatste keer werd geopend.,
- ctime( wijzigingstijd): wanneer de bestandskenmerken de laatste keer zijn gewijzigd.,2 dagen geleden, voer je het volgende commando in Terminal:
$ find . –atime -2
om Te zoeken naar bestanden die zijn gewijzigd op minder dan 2 dagen geleden, voer je het volgende commando in Terminal:
$ find . –ctime -2
Zoeken op basis van een bestand
bijvoorbeeld, om te zoeken bestand waarvan de afmetingen groter zijn dan 5 mb grootte, kunnen wij gebruik je het volgende commando in Terminal:
$ find . –size +5M\
Zoeken op basis van de bestandspermissies
Het wordt gebruikt om bestanden te vinden met uitdrukkelijke toestemming., De algemene syntaxis zou zijn:
$ find /path/to/file/ -type -perm mode
waarbij:
Type parameter D of f waarde bevat die worden gebruikt voor het specificeren van het type van het bestand. d voor mappen en f alleen voor bestanden.
modus kan ofwel met numerieke toestemming (bijv. 777, 655.. etc) of symbolische toestemming (bijv. u=x, a=r+x).,bijvoorbeeld, om naar een bestand te zoeken met de toestemming van 644, kunnen we het volgende commando gebruiken in Terminal:
$ find . –type f –perm 644
Methode 2: Met Locate Commando
Er is een ander Commando Locate dat gebruikt kan worden om bestanden in Linux te doorzoeken. Het heeft niet zo veel zoekvoorwaarden als de Find utility biedt, maar het is veel beter en sneller dan de Find utility. De reden achter is de achtergrond proces dat eigenlijk draait in uw systeem en zoekt en slaat nieuwe bestanden in zijn eigen database., In tegenstelling tot Find command, zoekt het niet op uw lokale harde schijf naar bestanden en mappen, maar in plaats daarvan, zoekt het ze in zijn eigen database. De database moet regelmatig worden bijgewerkt voor de Search utility om te werken.
Locate installeren
Locate wordt standaard niet geïnstalleerd in het Linux OS. U moet het handmatig installeren. Druk op Ctrl + Alt + T om de Terminal te starten en typ het volgende commando als sudo om het Locate utility te installeren:
$ sudo apt-get install locate
zodra de installatie is voltooid, kunt u het Locate utility meteen gebruiken.,
de algemene syntaxis van het commando is:
$ locate –i filename
waarbij-i wordt gebruikt om onderscheid tussen hoofdletters te negeren.
zoeken naar een bestand
om bijvoorbeeld naar een bestandsnaam “centos” te zoeken, gebruik je het volgende commando in Terminal:
$ locate –i centos
Het zal zoeken naar alle bestanden die de tekenreeks “centos” in hun bestandsnamen bevatten.
zoeken naar meerdere bestanden
u kunt ook meerdere bestandsnamen tegelijk zoeken. Bijvoorbeeld, gebruik het volgende commando in Terminal om te zoeken naar twee bestanden ” sdn.,txt “and”centos”:
$ locate –i sdn.txt centos
zoeken met Joker
U kunt ook het jokerteken gebruiken om de bestanden te vinden die overeenkomen met de query. Bijvoorbeeld om te zoeken naar alle bestanden die eindigt in “.iso”, gebruik het volgende commando in Terminal:
$ locate –i *.iso
Update locate database
Locate Commando vertrouwt op zijn database om te werken, dus het moet regelmatig worden bijgewerkt., Voer het volgende commando uit in Terminal om de locate utility database bij te werken:
$ sudo updatedb
Methode 3: Gebruik Grep Commando
hoewel Grep niet bedoeld is om direct bestanden in uw systeem te zoeken, wordt het gebruikt om tekst te zoeken. U kunt het echter gebruiken om de namen weer te geven van bestanden die de specifieke tekenreeks bevatten die overeenkomt met uw zoekopdracht. Om naar een tekenreeks te zoeken, moet u deze in dubbele aanhalingstekens omsluiten.,
de algemene syntaxis van het commando is:
Als u op zoek bent naar een bestand dat een woord bevat, waarvan u vermoedt dat het zich in een bepaalde map bevindt, kunt u ernaar zoeken met behulp van de bovenstaande syntaxis van het commando in Terminal.
bijvoorbeeld, om te zoeken naar een bestand dat het woord “Kuifje” bevat en we denken dat het bestand zich in onze downloadmap bevindt, kunnen we het volgende commando gebruiken om dat bestand te vinden.,
$ grep -r –i "tintin” /home/tin/Downloads
waarbij
-i wordt gebruikt om onderscheid tussen hoofdletters te negeren
–r wordt gebruikt om recursief naar de opgegeven map te zoeken
zoeken naar meerdere woorden
U kunt ook gelijktijdig naar meerdere tekenreeksen zoeken. Je moet backslash “\” en pipe teken “|” karakters te gebruiken onder uw strings.,
bijvoorbeeld om te zoeken naar twee tekenreeksen ” Kuifje “en” ping”, kunnen we het volgende commando gebruiken in Terminal:
$ grep –r –I "tintin\|ping” /home/tin/Downloads
Dit was het korte overzicht van hoe u naar bestanden kunt zoeken met behulp van de opdrachtregel in Ubuntu. In dit artikel hebben we drie handige opdrachtregelmethoden gezien om naar bestanden te zoeken. U kunt kiezen voor een van deze methoden, afhankelijk van de zoeksnelheid en voorwaarden.
bestanden vinden op de Ubuntu-opdrachtregel