Med kommandot awk kan du bläddra igenom filer och utföra vissa åtgärder. Grunden till detta Linux-kommando går tillbaka till 1977.

Vad är Linux-kommandot awk?

Linux har ett skript- och pro­gram­me­rings­språk som du kan använda för att utvärdera och redigera filer. Det kallas awk och har sitt ursprung redan 1977. Namnet kommer från de tre ut­veck­lar­na: Alfred Aho, Peter Wein­ber­ger och Brian Kernighan. Du kan enkelt använda verktyget via kom­man­do­ra­den eller SSH (Secure Shell). Precis som när du använder Linux-kommandot grep kan du använda kommandot awk för att söka efter vissa mönster i filer och sedan, om andra villkor är uppfyllda, redigera dem.

Hur fungerar kommandot awk?

Awk använder en kom­bi­na­tion av villkor och in­struk­tio­ner. När kommandot körs går det igenom filen rad för rad och letar efter vissa villkor. Om det hittar dessa villkor i en rad, utför det in­struk­tio­nen där. Om inget villkor är angivet, utförs in­struk­tio­nen på varje rad. Om du inte anger någon in­struk­tion utförs stan­dard­in­struk­tio­nen från in­mat­nings­ra­den. Det innebär att du kan använda Linux awk för att söka efter vissa termer eller exempel i filer.

Hur ser awk-syntaxen ut?

Syntaxen för Linux-kommandot awk ser ut som följer:

$ awk [Options] "Operation {Instructions}" [Target file]
shell

Vilka al­ter­na­tiv har kommandot awk?

Du har tre al­ter­na­tiv att välja mellan:

  • -F [Separator]: Du kan använda det här al­ter­na­ti­vet för att ställa in en separator mellan filer. Det är van­ligt­vis ett enda mel­lanslag.
  • -f [Filnamn]: Du kan använda detta al­ter­na­tiv för att ange i vilken fil du vill köra awk-kommandot.
  • -v: Använd detta al­ter­na­tiv för att lägga till en variabel.

Exempel på kommandot awk

För att få en bättre för­stå­el­se för hur du kan använda ask, följer här några exempel. I det här fallet använder vi en fil som heter example.txt som in­ne­hål­ler en lista över städer, länder och kon­ti­nen­ter i separata kolumner. Den ser ut så här:

City Country Continent
Washington D.C USA America
Paris France Europe
Hanoi Vietnam Asia
Abuja Nigeria Africa
shell

Om du vill skriva ut hela filen måste du använda följande kommando:

$ awk "{print $0}" example.txt
shell

Om du bara vill se enskilda kolumner kan du dock använda ett separat kommando. I vårt fall är det den första och tredje kolumnen:

$ awk "{print $1, $3}" example.txt
shell

Detta ger följande resultat:

Washington D.C America
Paris Europe
Hanoi Asia
Abuja Africa
Gå till huvudmeny