Comandos de filtragem

Publicado por Cesar Filie em 29/05/2013

[ Hits: 28.895 ]

 


Comandos de filtragem



head → exibe na saída padrão uma quantidade de linhas de texto a partir do início do arquivo.

Sintaxe: head [opções] arquivo

Opções:
  • -n :: Exibe as n primeiras linhas do arquivo.
  • -b n :: Exibe os n primeiros blocos do arquivo.
  • -c n :: Exibe os n primeiros caracteres (bytes) do arquivo.
Exemplo (exibe as cinco últimas linhas do arquivo "/etc/mtools.conf"):

tail -5 /etc/mtools.conf


wc → conta palavras da entrada padrão, ou de um arquivo, e apresenta o resultado na saída padrão.

Sintaxe: wc [opções] arquivo

Opções:
  • -l :: Conta as linhas
  • -w :: Conta as palavras
  • -c :: Conta os caracteres
Exemplo (conta o número de linhas do arquivo "/etc/mtools.conf"):

wc -l /etc/mtools.conf


nl → enumera linhas de um arquivo.

Sintaxe: nl [opções] [arquivo]

Exemplo (enumerar as linhas do arquivo "/etc/passwd"):

nl /etc/passwd


join → une linhas de dois arquivos que contenham um campo comum.

Sintaxe: join [opções] [arquivo]

Exemplo:

join spc1.txt spc2.txt


tr → substitui caracteres da entrada padrão presentes em str1 por seus correspondentes em str2.

Sintaxe: tr [opções] [str1 [str2] ]

Opções:
  • -c :: efetua a troca de todos os caracteres que não estejam especificados em str1
  • -d :: elimina ocorrências de caracteres de str1 na entrada
  • -s :: elimina repetições de caracteres de str2 na saída
Exemplo (exibe o nome de todos os arquivos do diretório corrente em letras maiúsculas):

ls | tr 'a-z' 'A-Z'


sort → ordena os dados recebidos da entrada padrão ou de um arquivo, escrevendo-os na saída padrão.

Sintaxe: sort [opções] arquivo

Opções:
  • -m :: intercala dois arquivos já ordenados, escrevendo a intercalação na saída padrão
  • -r :: inverte a ordem da classificação, de ascendente para descendente
  • -t separador :: utiliza separador como caractere de separação de campos
Exemplo (digamos que o conteúdo desse arquivo são os nomes de todos os operadores, ele ordena o arquivo "operadores.txt"):

sort operadores.txt


cut → seleciona trechos de cada linha de texto recebido da entrada padrão ou de um arquivo, apresentando o resultado na saída padrão.

Sintaxe: cut [opções] arquivo

Opções:
  • -b bytes :: seleciona bytes
  • -c caracteres :: seleciona caracteres
  • -f campos :: seleciona listas de campos
  • -d c :: delimitador de campos como sendo o caractere c em vez do caractere de tabulação
Exemplo (exibe as colunas 1 e 5 do arquivo "/etc/passwd"):

cut -f 1,5 -d : /etc/passwd


paste → exibe, lado a lado, o conteúdo de arquivos.

Sintaxe: paste [opções] arquivo

Opções:
  • -s :: exibe as linhas de um arquivo em série em vez de uma linha abaixo da outra
  • -d c :: especifica o delimitador de campos como sendo o caractere c em vez do caractere de tabulação
Exemplo (exibe em uma coluna o "spc1.txt" e na outra, o "spc2.txt", separados por uma vírgula):

paste -d, spc1.txt spc2.txt


tee → exibe a saída de um programa e a escreve em um arquivo, simultaneamente.

Sintaxe: tee [opções] arquivo

Opções:
  • -a :: concatena o arquivo em vez de sobrescreve-lo
  • -i :: ignora interrupções
Exemplos:

1. Guarda uma cópia da listagem do comando ls em "ls.out":

ls -l /bin | tee ls.out

2. Guarda uma cópia de sua sessão ftp em "ftp.out":

ftp ftp1.printconnection.com.br | tee ftp.out


diff → exibe, na tela, as diferenças entre dois arquivos texto ou todos os arquivos com o mesmo nome, em dois diretórios.

Sintaxe: diff [opções] arquivo1 arquivo2

Opções:
  • -a :: considera todos os arquivos do tipo texto
  • -b :: ignora sequências de espaços e caracteres de tabulação
  • -d :: tenta localizar um conjunto menor de modificações (isso torna o diff mais lento)
  • -i :: não distingue maiúsculas de minúsculas
  • -r :: processa também os subdiretórios, quando diretórios são comparados
  • -s :: informa quando dois arquivos são na verdade o mesmo arquivo
  • -N :: trata arquivos ausentes como vazios
Exemplo (exibe as diferenças entre os arquivos "spc1.txt" e "spc2.txt"):

diff -f /operftp/tmp1/spc1.txt /operftp/tmp2/spc2.txt


uniq → remove linhas duplicadas em um arquivo depois de passar pelo comando sort.

Sintaxe: uniq [opções] [entrada [saída] ]

Opções:
  • -c :: conta o número de ocorrências
  • -d :: só exibe as linhas duplicadas
  • -i :: não distingue maiúsculas de minúsculas
Exemplo:

uniq operadores.txt | sort -c


xargs → constrói e executa comandos a partir da entrada padrão.

Sintaxe: xargs [opções] comando [argumentos]

Opções:
  • -p :: modo interativo, pede confirmação antes de executar cada linha de comando
  • -t :: modo detalhado, exibe a linha de comando na tela antes de executá-la
Exemplo:

find / -empty | xargs ls -l | less

Outras dicas deste autor

O gerenciador de pacotes dpkg

Comandos de compactação / descompactação

Comandos de manipulação de arquivos e diretórios

Comandos de ajuda

Comandos de paginação

Leitura recomendada

O comando nohup

Usando cat para copiar arquivos remotos

Login do Ubuntu não funciona - Erro na variável de ambiente PATH [Resolvido]

Controlar multimídia via linha de comando (Spotify, Netflix, YouTube etc)

lspci - Verificando memória de vídeo

  

Comentários
[1] Comentário enviado por removido em 29/05/2013 - 11:50h

Ótima dica!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts