quinta-feira, março 27, 2014

Linux SED and AWK

O comando SED é um poderoso utilitário de processamento de texto e é um dos mais antigos e populares utilitários UNIX.

É utilizado para alterar o conteúdo de um ficheiro, geralmente colocando os conteúdos num outro ficheiro daí o se nome "Stream Editor".

SED pode filtrar texto e efetuar substituições em streams de dados.

$sed s/pattern/replace_string/ file
Substituir a primeira string encontrada numa linha.

$sed s/pattern/replace_string/g file
Substituir todas as ocorrências na linha.

$ sed s/pattern/replace_string/g file > file2
O comando anterior vai substituir todas as ocorrências de "pattern" por "replace_string" no ficheiro "file" e copiar par "file2".

O comando AWK é utilizador para extrair e imprimir conteúdos especificos de ficheiros.

$awk '{ print $0 }' /etc/passwd
O comando anterior permite imprimir o ficheiro passwd.

$awk -F: '{ print $1 }' /etc/passwd
O comando anterior permite imprimir a primeira coluna do ficheiro passwd, cujos campos estão separador pelo limitador ":" definido com ".F:".

$awk -F: '{ print $1 $6 }' /etc/passwd
O mesmo que o anterior, mas desta vez permite mostrar a coluna 1 e 6.

Sem comentários: