Linux:Comando Awk

From Wiki

O comando awk tem por finalidade encontrar padrões e gerar resultados, aqui mostramos alguns exemplos bastante úteis para o seu dia a dia.


Retornando colunas específicas

Exemplo do /etc/passwd

# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh

Pega o separador ":" e imprime a 1 e 3 colunas adicionado um ";" no meio

#cat /etc/passwd | awk -F":" '{ print $1 ";" $3 }'
root;0
daemon;1
bin;2
sys;3

Adiciona um nova linha

Adicione o "\n" para gerar uma nova linha

# cat /etc/passwd | awk -F":" '{ print $1 ";" $3 "\n"}'
root;0

daemon;1

bin;2

sys;3

Retornando condição (IF)

# uptime
18:47:05 up  8:59,  3 users,  load average: 0.64, 0.73, 0.74

# uptime | awk '{if ($4 > 1) { print $4}} '
3

# uptime | awk '{if ($4 > 1) { print "Alert"}} '
Alert


Ver também