Betaalmethoden Abuse

Zoeken naar bestanden op inhoud in Linux

14.04.2023, 02:43

Bestandsinhoud in Linux is data die is opgeslagen in een bestand en kan worden gelezen of gewijzigd met behulp van verschillende hulpprogramma's en de opdrachtregel. Vaak moet je naar bestanden zoeken aan de hand van die gegevens, hier lees je hoe je dat doet.

Wat is inhoud in Linux OS

De inhoud van bestanden kan tekst of binair zijn, afhankelijk van het type gegevens dat wordt opgeslagen. Tekstbestanden bevatten tekens en tekenreeksen die door mensen kunnen worden gelezen. Binaire bestanden bevatten binaire gegevens zoals uitvoerbare code, afbeeldingen, video- en audiobestanden. De inhoud van bestanden kan worden weergegeven in een terminal met het commando cat of less en bewerkt worden met teksteditors zoals vi, nano of emacs.

Waarom zoeken nodig is

Zoeken op inhoud in Linux is nodig om snel bestanden te vinden die een specifieke tekst, woord, zin of karakter bevatten. Het kan handig zijn voor het vinden van configuratiebestanden, logbestanden en andere bestanden in grote mappen met veel submappen. Het kan ook handig zijn bij het verkennen van een bestandssysteem op zoek naar bestanden die een bepaald virus of ongewenste code bevatten. Met krachtig en flexibel zoeken naar bestanden op inhoud, kun je snel de bestanden vinden die je nodig hebt en er gemakkelijk mee werken.

Opdrachtsyntaxis

Om bestanden te zoeken op inhoud in Linux, kun je het commando grep gebruiken.

Syntaxis van het commando:

grep [options] [template] [files]

Gebruiksvoorbeelden:

  • Zoek alle bestanden in de map /home/user die de tekenreeks "hello" bevatten:
    grep -r "hello" /home/user
  • Zoek bestanden in de map /etc en zijn submappen die het woord "network" bevatten:
    grep -R "network" /etc
  • Zoek bestanden in de map /var/log die het bericht "error" bevatten:
    grep -R "error" /var/log
  • Zoek bestanden met een .txt extensie die de string "important" bevatten in de map /home/user:
    grep "important" /home/user/*.txt
  • Zoek naar objecten die het woord "password" bevatten in de map /etc en sla het resultaat op in het bestand passwords.log:
    grep -R "password" /etc > passwords.log

De belangrijkste opties van het grep commando zijn

  • -i: negeer hoofdlettergebruik in zoekopdrachten
  • -n: regelnummers uitvoeren die de vereiste informatie bevatten
  • -c: uitvoer alleen het aantal regels dat de vereiste informatie bevat
  • -v: zoek naar regels die de opgegeven informatie niet bevatten

Naast het grep commando kun je ook het find commando gebruiken om te zoeken naar bestanden met een specifieke inhoud in opgegeven mappen. Zoeken met deze opdracht is echter langzamer dan met de opdracht grep.