awk

awk [-F<c>] padrões arquivo
ou
awk [-F<c>] -farq_padrões arquivo
onde
Comentários sobre as opções do comando

Suponha que queremos obter a lista dos usuários do sistema e o shell usado por cada um dos usuários. Estas duas informações fazem parte do arquivo /etc/passwd onde existe uma entrada para cada usuário do sistema com as seguintes informações: nome, senha, UID, GID, informações do usuário, diretório home e o shell padrão. Por exemplo, a linha abaixo mostra a entrada para o usuário aluno que usa o shell bash como padrão.

aluno:x:501:501::/home/aluno:/bin/bash

Note que os campos são separados pelo símbolo de dois pontos (":"). Podemos então, digitar o seguinte comando para obter os nomes e os shells dos usuários:

awk -F:  '{print $1 " => " $7}'  /etc/passwd

A opção -F define o caractere dois pontos como separador dos campos. O comando print define a exibição de três argumentos: o primeiro campo de cada linha ($1), o string " => " e o sétimo campo de cada linha ($7). Portanto, a saída do comando acima para a entrada do usuário aluno é

aluno => /bin/bash

Também podemos executar o comando abaixo para obter o mesmo resultado.

awk -F: -f lista_usu /etc/passwd

onde lista_usu é um arquivo texto com o seguinte conteúdo

{print $1 " => " $7}

Observações

A awk é uma linguagem muito rica pois permite, por exemplo, o uso de

Para obter maiores informações, consulte o manual on-line (digite man awk).