Ao usar o comando awk, você pode examinar os arquivos e executar de­ter­mi­na­das ações. A base desse comando do Linux remonta a 1977.

O que é o comando awk do Linux?

Linux tem uma linguagem de script e pro­gra­ma­ção que você pode usar para avaliar e editar arquivos. Chamada awk, ela tem suas origens em 1977. O nome foi tirado dos três de­sen­vol­ve­do­res: Alfred Aho, Peter Wein­ber­ger e Brian Kernighan. Você pode usar a fer­ra­menta fa­cil­mente por meio da barra de comando ou SSH (Secure shell). Assim como quando você usa o Linux grep command, é possível usar o comando awk para pesquisar de­ter­mi­na­dos padrões em arquivos e, se outras condições forem atendidas, eles poderão ser editados.

Como funciona o comando awk?

O Awk usa uma com­bi­na­ção de condições e ins­tru­ções. Ao executar o comando, ele per­cor­rerá o arquivo linha por linha pro­cu­rando por de­ter­mi­na­das condições. Se encontrar essas condições em uma linha, ele executará a instrução. Se não houver nenhuma condição definida, a instrução será executada em todas as linhas. Se você não inserir uma instrução, a instrução padrão da linha de entrada será executada. Isso significa que você pode usar o awk do Linux para pesquisar de­ter­mi­na­dos termos ou exemplos em arquivos.

Como é a sintaxe do awk?

A sintaxe do comando awk do Linux é a seguinte:

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

Quais são as opções do comando awk?

Você tem três opções dis­po­ní­veis:

  • -F [Separator]: Você pode usar essa opção para definir um separador entre os arquivos. Ge­ral­mente é um espaço simples.
  • -f [Nome do arquivo]: Você pode usar essa opção para definir em qual arquivo deseja executar o comando awk.
  • -v: Use essa opção para adicionar uma variável.

Exemplos do comando awk

Para entender melhor como você pode usar o ask, aqui estão alguns exemplos. Nesse caso, estamos usando um arquivo chamado example.txt que inclui uma lista de cidades, países e con­ti­nen­tes em colunas in­di­vi­du­ais. Sua aparência é a seguinte:

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

Se quiser gerar o arquivo inteiro, você precisará usar o seguinte comando:

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

En­tre­tanto, se você quiser ver apenas colunas in­di­vi­du­ais, poderá usar um comando separado. No nosso caso, são a primeira e a terceira colunas:

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

Isso retornará o seguinte resultado:

Washington D.C America
Paris Europe
Hanoi Asia
Abuja Africa
Ir para o menu principal