grep
Met grep wordt een zoek commande gestart, waar je in specifieke stukken van wooden enz.. kan zoeken in bestanden.
bvb. het commando: "grep samba /etc/*" dan gaat "grep" voor u in de directory /etc/ op zoek in alle bestanden waar "samba "in voorkomt.
Een ander voorbeeld is dat je verschillende commando's met elkaar kan combineren.
bvb: "ls -R /" samen gebuiken met "grep" dan krijg je de volgende regel "ls -R / |grep dhcp"
dan zal "ls -R /" zijn opgracht regel uitvoeren maar "grep dhcp" zal alles waar dhcp in voorkomt
uitfilteren en laten zien.
Het "|" teken (pipe teken) zorgt ervoor dat de 2 losse opdrachten (ls + grep) met elkaar gebruikt worden.
Met"grep" gaan we nu eens op zoek in de directory /etc op zoek waar allemaal "root" in voorkomt.
De volgende regel moet je intypen"grep root /etc/*"
het werkt wel maar van de subdirectory's waar "root" in files staat krijg je foutmeldingen van "Is a directory".
Dit kunnen we eruit filteren voor de "-l" optie te gebuiken. (dit laat alleen namen van bestanden zien naar waar je op zoek naar ben)
Dan krijg je de volgende regel "grep -l root /etc/*", dit is al beter maar nog niet volledig wat we willen.
hiervoor gaan we het commando "2> /dev/null" gebruiken stuurt de foutmeldingen weg naar een zogenaamd zwart gat op uw pc.
"2" filterd de foutmeldingen en ">" (redirector) stuurt ze naar "/dev/null" is het zogenoemd zwarte gat waardoor je die niet
te zien krijgt, de regel gaat er dus als volgend uitzien "grep -l root /ect/* 2>/dev/null".
Het resultaat van u zoekopdracht kan je ook in een bestand wegschrijven door het volgende te doen "grep -l /root /etc/* >resultaat" nu is het resultaat
in het bestand "resultaat" geschreven in uw homedirectory.
Nu maak je een bestand "resultaat " aan en als je dezelfde regel opnieuw uitvoerd zal dat bestand "resultaat" gewoon overschreven worden.
Wil je nu om ene bepaalde reden dat het onderaan een huidig bestand geplaatsen (verschillende zoekopdrachten ofzo) gebruiken dan ">>"
ipv. ">" je hebt dan de volgende regel:
"grep -l root /etc/* >>~/resultaat".
Met de "-i" optie zet de de case-insensitive uit.
Met de " -v" draai je de werking van grep om al je het volgende commando uitvoert "grep samba /etc/rc.config" krijg de regels te zien waar geen samba in voorkomt
Dit is een voorbeeld wat je met "grep" kan doen en waarvoor het kan gebruikt kan worden, er zijn nog veel meer mogelijkheden maar ik kan niet alles opnoemen maar het geeft wel een idee van de mogelijkheden.
|