Hoe awk-opdracht in Bash te gebruiken

Hoe Awk Opdracht In Bash Te Gebruiken



Bij het werken in de opdrachtregelomgeving is het essentieel om een ​​goed begrip te hebben van de verschillende beschikbare opdrachten om bestanden, mappen en andere gegevens effectief te beheren. Een van die commando's is het 'awk'-commando. awk is een krachtig hulpprogramma dat wordt gebruikt om tekstbestanden in de Unix/Linux-omgeving te verwerken en te manipuleren. In dit artikel wordt uitgelegd wat de opdracht 'awk' is en hoe u deze effectief kunt gebruiken.

Wat is het 'awk'-commando?

De opdracht 'awk' is een krachtige tool voor het manipuleren en verwerken van tekstbestanden in Unix/Linux-omgevingen. Het kan worden gebruikt om taken uit te voeren zoals patroonvergelijking, filteren, sorteren en manipuleren van gegevens. awk wordt vooral gebruikt om gegevens op een gestructureerde manier te verwerken en te manipuleren.







Hoe awk-opdracht te gebruiken

awk is een opdrachtregelprogramma dat op verschillende manieren kan worden gebruikt. Het kan rechtstreeks vanaf de opdrachtregel worden aangeroepen, of het kan worden gebruikt in combinatie met een shellscript. Hier zijn enkele voorbeelden van het gebruik van awk:



Voorbeeld 1: het aantal regels in een bestand tellen

Om het aantal regels in een bestand te tellen, kunt u de volgende awk-syntaxis gebruiken:



awk 'EINDE{print NR}' < bestandsnaam.txt >


Hier is 'NR' een ingebouwde variabele die het aantal records (regels) bevat dat door awk is verwerkt. Het sleutelwoord 'END' vertelt awk om deze opdracht uit te voeren nadat alle regels in het bestand zijn verwerkt. Hier heb ik ter illustratie een bestandstekstbestand gemaakt en vervolgens de bovenstaande syntaxis gebruikt in een shellscript dat is:





#!/bin/bash
awk 'EINDE{print NR}' testbestand.txt


Het tekstbestand dat ik heb gemaakt heeft twee regels en wanneer de awk-opdracht wordt gebruikt, wordt de uitvoer weergegeven 2, je kunt het tekstbestand zien dat ik heb gemaakt in de onderstaande afbeelding:



Voorbeeld 2: Gegevens filteren

De awk kan worden gebruikt om gegevens te filteren op basis van specifieke criteria en hier is de syntaxis die men voor dit doel zou moeten gebruiken:

awk '!//' < bestandsnaam.txt >


U kunt bijvoorbeeld de onderstaande opdracht gebruiken om alle regels in een bestand uit te filteren die het woord 'Hallo' bevatten.

#!bin/bash
awk '!/Hallo/' testbestand.txt


In dit voorbeeld is de '!' symbol ontkent het zoeken met reguliere expressies, dus alle regels die het woord 'Hallo' niet bevatten, worden afgedrukt. Ik heb hetzelfde tekstbestand gebruikt als in het vorige voorbeeld, dus hier is de uitvoer van het hierboven gegeven script:

Voorbeeld 3: Specifieke velden extraheren

awk kan ook worden gebruikt om specifieke velden uit een bestand te extraheren. Als u bijvoorbeeld een bestand hebt met een lijst met namen en adressen en u wilt alleen de namen extraheren, kunt u de volgende opdracht gebruiken:

awk '{print $}' < bestandsnaam.txt >


Hier heb ik ter illustratie het eerste veld van hetzelfde tekstbestand afgedrukt en '$1' vertegenwoordigt het eerste veld in elke regel van het bestand. De opdracht 'afdrukken' vertelt awk om alleen dat veld af te drukken.

#!/bin/bash
awk '{print $1}' testbestand.txt


In het tekstbestand is de eerste invoer van de eerste regel 'Dit' en de eerste invoer van de tweede regel is 'Hallo', dus hier is de uitvoer van de gegeven code:

Conclusie

De opdracht awk is een krachtige tool die wordt gebruikt om tekstbestanden te manipuleren en te verwerken. Hiermee kunt u verschillende bewerkingen op tekstbestanden uitvoeren, zoals het afdrukken van specifieke kolommen, het zoeken naar patronen en het berekenen van sommen. Door de basis van awk onder de knie te krijgen, kunt u uw workflow stroomlijnen en een efficiëntere en effectievere Linux- of Unix-gebruiker worden.