We ❤ Teach

Amamos o que fazemos!

Dicas LPI - Filtros de textos e arquivos: wc, nl, sort, uniq e unexpand

Dicas LPI - Filtros de textos e arquivos: wc, nl, sort, uniq e unexpand
  • Compartilhe esse post
  • Compartilhar no Facebook00
  • Compartilhar no Google Plus00
  • Compartilhar no Twitter

Aprenda com as dicas para a LPI. Hoje trabalhamos os comandos do Tópico 103.2 da LPIC-1, com os comandos wc, nl, sort, uniq e unexpand do Linux. Confira!

  • INTRODUÇÃO

Este tópico irá abordar conceitos e comandos pertencentes a leitura de textos no Linux. Estes comandos de modo isolado não alteram o conteúdo do texto, porém se combinados com outros comandos, sim. Entretanto, neste primeiro momento aprenderemos apenas a ler as informações do Linux. Todos os comandos são em minúsculo, mas para uma melhor leitura os digitarei em maiúsculo. Vocês perceberão que alguns comandos fazem o mesmo que outros, mas a abordagem será diferente. Cada comando tem seu manual de instrução explicando seus parâmetros. Colocarei apenas os parâmetros mais utilizados, porém recomendo que leiam o manual destes e testem todos os parâmetros.

 

  • COMANDOS QUE SERÃO ABORDADOS:

WC, NL, SORT, UNIQ, UNEXPAND

 

  • ARQUIVOS PARA USAR NAS PRÁTICAS:

Faça o download dos arquivos através deste link e pratique!

 

  • COMANDO: WC

O WC é um contador. Não só isso, mas combinado com outros comandos pode nos ajudar a contar quantos arquivos tem dentro de um diretório.

PARÂMETROS:
-c: Utilizado para contar a quantidade Byte dentro do arquivo. Obs: espaço também é Byte.

wc -c ordenacao.txt

-l: Utilizado para contar a quantidade de caractere dentro do texto, inclusive espaços.

wc -l ordenacao.txt

-w: Utilizado para contar a quantidade de palavra dentro do texto, exceto espaço.

wc -w ordenacao.txt

 

  • COMANDO: NL

O NL faz o mesmo que o cat –b (informa o número de linhas de um arquivo).

nl texto-pequeno.txt

 

  • COMANDO: SORT

O SORT é utilizado para mudar a ordem do conteúdo dentro do texto. Sim, ele é parecido com o TAC. Porém, utilizando o SORT sem parâmetro os espaços entre parágrafos são jogados para cima e a ordem do texto é mantida.

sort nomes.txt

PARÂMETROS:
-r: Será utilizado para inverter a ordem do texto, semelhante ao TAC.

sort -r nomes.txt

-k: Será utilizado para ordenar o texto através de colunas, repare que o número 2 estou informando que ordenarei meu documento pela segunda coluna.

sort -k 2 nomes.txt

 

  • COMANDO: UNIQ

O UNIQ serve para exibir caracteres que são repetidos no texto. Porém, se houver espaços entre eles, o resultado não será satisfatório. Mas e aí? Fica por isso mesmo?! Não! Combinaremos esse comando com o SORT, que ordenará o texto facilitando o caminho para o UNIQ. Algumas observações são importantes: Se houver colunas, não será contato a repetição. Ele não contará caracteres que estão na mesma linha.

PARÂMETROS:
-c: Exibe a quantidade de vezes em que o caractere aparece repetido.

uniq -c nomes.txt

-d: Exibe apenas a repetição.

uniq -d nomes.txt

 

  • COMANDO: UNEXPAND

O UNEXPAND serve para transformar espaços em tab para espaço especificado pelo usuário. Como assim?! Simples, usando seus parâmetros, você poderá determinar com quantos espaços se faz um tab. Um detalhe: Para ver se deu certo ou não, será necessário usar o comando CAT junto com um redirecionador. Este comando não é muito usual, mas mesmo assim é cobrado na LPI. São considerado oito espaços para formar um tab.

PARÂMETROS:
-a: Converte todos os espaços ao invés dos espaços no início das linhas.

unexpand -a unexpand.txt

-t: Determina quantos espaços que o tab contém. Vale ressaltar: Você deverá digitar dois espaços para que o comando funcione. O UNEXPAND não aceita apenas um espaço. Outro detalhe para o “jump the cat”: Se você colocar três espaços e passar -t3, o resultado ficará estranho. Então o pulo do gato é: passe para o -t os espaços + 1. WHAT?! No texto você coloca três espaços e no comando você passa -t4.

unexpand -t4 unexpand.txt

Fiquem atentos... toda semana teremos Dicas LPI! LPI DROPS - Linux em dose homeopática!!!

Por Felippi Cunegundes!

  • Compartilhe esse post
  • Compartilhar no Facebook00
  • Compartilhar no Google Plus00
  • Compartilhar no Twitter