1. UESPI – UNIVERSIDADE ESTADUAL DO PIAUÍ
Bacharelado em Ciências da Computação
OPTATIVA I
Filtros de Textos
Redirecionadores e Condutor
Wildcards
Tarcísio Franco Jaime
2. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Utilizando filtros de Textos
Cat – imprime contéudo de arquivos na tela,
recebe texto digitado pelo teclado para um arquivo
e concatena arquivos.
ex.: cat teste.txt = ver o conteúdo do arquivo
Prof. Tarcísio Franco
cat -n teste.txt = inseri nº de linhas
cat teste.txt > texto.txt = concatena, substituindo
cat teste.txt >> texto.txt = concatenca, adicionando
Criar arquivo teste.txt e texto.txt, e usar os exemplos
acima.(cat > teste.txt, man cat > texto.txt)
3. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Cut – lê o conteúdo de um ou mais arquivos, e
corta a coluna, tem como saída uma coluna
vertical.
Opções:
-d delimitador Configura delimitador que separa uma coluna da
outra. Padrão é Tab.
-f número Imprime a coluna número
Prof. Tarcísio Franco
ex.:
cut -d : -f 1 /etc/passwd
Crie um arquivo, chamado arquivo.txt delimitado
com Tab que possua o conteúdo listado abaixo, e
liste deste arquivo somente os shells .
zequinha /home/zequinha 10 /bin/bash
fulanodetal /home/fulanodetal 4 /bin/bash
zeca /home/zeca 5 /bin/bash
4. Head – mostra as 10 linhas do início do arquivo
UESPI – Universidade Estadual do Piauí - OPTATIVA I
Opções:
-n número Configura o número de linhas que o head exibirá
ex.: head /var/log/messages
Listar as primeiros 30 linhas do arquivo /var/log/messages
Tail – visualiza as últimas 10 linhas de um arquivo.
Prof. Tarcísio Franco
Opções:
-n número Configura o número de linhas a ser exibido
-f Mostra as últimas linhas de um arquivo continuamente
ex.: tail /var/log/messages
Em um terminal fique visualizando a saída contínua de um arquivo
com tail, e em outro terminal acrescente mais uma linha neste
arquivo que está sendo visualizado, e verifique se o arquivo foi
atualizado.
5. UESPI – Universidade Estadual do Piauí - OPTATIVA I
paste - concatena as linhas de diversos
arquivos.
Opções:
-d 'x' Separa as colunas com símbolo x dentro das aspas
simples
-s concatena todo o contéudo de um arquivo com uma
linha para cada arquivo
Prof. Tarcísio Franco
ex.: paste arq1 arq2
Criar um arquivo com 5 nomes de pessoa, chamado
“nomes”, onde cada linha possui um nome. Criar outro
arquivo com 5 nomes de provedores de email. Gere a
seguinte saída nome@provedor
Testar com 3 arquivos: crie arquivo com quantidade de
emails, chamado “qtd”, mude para “ -d ':' ”
Teste com a opção -s
6. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Join – une as linhas de dois arquivos q
possuem índice comum. Os arquivos
devem estar ordenados em ordem
crescente pelo índice.
Opções:
-o A.C,A.C, monta os registros na saída padrão de acordo
Prof. Tarcísio Franco
com a ordem determinada por A.C onde A é o número do
arquivo e C é a posição do campo no arquivo. Os campos
A.C são separados por uma vírgula.
ex.: joint -t; -o 1.1,1.2,2.2 nomes provedores
Usar os arquivos anteriores para fazer os testes. Usar
como separador de campos o “;”
7. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Join
Crie um arquivo onde seja a junção do
arquivo “nomes” com o arquivo “qtd”,
chamado “nomqtd”
Faça um join agora desses dois arquivos
Prof. Tarcísio Franco
“nomqtd” e “provedores”, onde gere na
tela:
nome;provedor;quantidade
8. Split – usado para dividir grandes
UESPI – Universidade Estadual do Piauí - OPTATIVA I
arquivos em n-arquivos menores. Por
padrão divide arquivo texto entre 1000
linhas.
Opções:
-l nº número de linhas para divisão de um arquivo
texto
Prof. Tarcísio Franco
-b tam K|M|G define o tamanho na variável tam de
acordo com Kbyte...
-d nome uso de sufixo numérico, a partir no nome.
nome01, nome02,
Criar um arquivo com mais de 1000 linhas e fazer
sua separação com tamanhos de 50 linhas.
Separar um arquivo pelo tamanho.
– Para juntar as partes:
9. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Redirecionamento e Condutores
• Entrada padrão (stdin): entrada de um
fluxo de dados. ex.: teclado, mouse, cd...
Pode ser representado por 0. Alimentam o
computador com informações.
Prof. Tarcísio Franco
• Saída padrão (stdout): saída de fluxo de
dados em condições normais. Como
monitor, impressora, arquivo, etc.
Recebem informações do computador.
Representado por 1.
• Saída de Erro (stderr): é a saída de um
fluxo de dados em condições de erro ou
insucesso. Represnetada por 2.
10. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Redirecionamento e Condutores
• Para redirecionar um resultado de uma
saída para uma outra saída utilizamos o
sinal de maior(>)
• Para direcionarmos um a entrada para
Prof. Tarcísio Franco
outra entrada usamos o sinal de
menor(<)
• Para direcionarmos uma saída para uma
entrada , usamos o pipe (|) ou condutor.
11. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Redirecionamento e Condutores
ex.:
mail aluno@uespi.br < email.txt
o prg mail esta recebendo como argumento
o end. de email e ao invés de utilizar o
Prof. Tarcísio Franco
teclado como entrada padrão, o arquivo
email.txt é redirecionado como entrada.
./folha_pagamento > arquivo1
envia toda a saída do programa
folha_pagamento para o arquivo1
./folha_pagamento 2 > arq_erro.log
12. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Redirecionamento e Condutores
./folha_pagamento > arquivoTotal 2>&1
./folha_pagamento > arquivoTotal 2> arquivoTotal
envia toda a saída padrão e de erros para arquivoTotal
./folha_pagamento > arq_sucesso 2> arq_err
Prof. Tarcísio Franco
envia toda saída normal para arq_sucesso e a saída de
erro para arq_err
./folha_pagamento | imprime_boletos 2> arq_err
envia o resultado da folha_pagamento para para o
processo imprime_boletos e a saída do
imprime_boleto para o arquivo arq_err
Fazer Exemplos.
13. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Redirecionamento e Condutores
. ls dddf* 2> arquivo
ls > arvquivo
ls > arquivo 2> erro
ls *.df *.txt 2> saida
Prof. Tarcísio Franco
ls *.df *.txt > saida 2> /dev/null
ls *df *.txt > saida 2>&1
14. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Símbolos Coringa (wildcards)
Símbolo Descrição
* Significa “vale qualquer coisa” e pode substituir
um ou mais caracteres de um nome. Ex.:
“Certifi*” pode ser Certificado, Certificação, ou
qualquer combinação que iniciem com “Certifi”.
? Significa que pode substituir um caractere
somente de um nome. Ex.: “?ertificado” pode
Prof. Tarcísio Franco
substituir “Certificado”, “certificado” ou qualquer
combinação de nomes de arquivos que inicie com
um caracter qualquer e termine com “ertificado”.
{texto1,texto2,texto3 Substitui a parte dentro das chaves pelo texto1,
...} depois pelo texto2, assim por diante. Ex.: parte
{a,b,c} vai resultar em parte_a, parte_b e parte_c
Liste os arquivos que tenha como final pdf, txt,
jpg e png. Mostre na tela somente o resultado
livre de qualquer erro.
15. Tac – mostra um ou mais arquivos de trás
UESPI – Universidade Estadual do Piauí - OPTATIVA I
para frente
ex.: tac [arquivos]
Sort – uso comum para ordenar arquivos
Ex: sort arquivo.txt
Prof. Tarcísio Franco
16. Crie o arquivo “alfabeto.txt” com o contéudo:
UESPI – Universidade Estadual do Piauí - OPTATIVA I
a:f
b:e
c:d
d:c
e:b
Prof. Tarcísio Franco
f:a
Empregue o seguinte comando abaixo e verifique o
resultado:
sort alfabeto.txt
sort alfabeto.txt -t: -k2
17. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Uniq - filtrar uma sequencia de linhas de
modo que possa remover as linha
adjacentes com conteúdo repetido.
-c -exibe o número de ocorrências de cada linha do
arquivo.
-d -exibe apenas as linhas com mais de uma
ocorrência onde cada linha é mostrada apenas uma
Prof. Tarcísio Franco
vez.
-D -exibe todas as linhas com mais de uma ocorrência.
Se uma determinada linha possui duas ocorrências, ela
é exibida duas vezes.
-i -ignora a diferença entre letras maiúsculas e letras
minúsculas.
-u -exibe apenas as linhas que possuem uma única
ocorrência.
Obs.: o arquivo tem que está ordenado.
18. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Uniq
ex.:
criar arquivo com o sequinte conteúdo
aaaa
aaaa
AAAA
bbb
Prof. Tarcísio Franco
bbbbb
cccc
CCCC
• Quantas ocorrências de linhas iguais temos no
arquivo?
• Liste somente as linhas não repetidas.
• Liste somente as linhas repetidas.
• Liste somente as linhas repetidas com suas
ocorrêcias.
19. UESPI – Universidade Estadual do Piauí - OPTATIVA I
Grep – filtra as linhas de um determinado
arquivo procurando por uma expressão
regular
-c mostra somente a contagem das
ocorrências
-i ignora as ocorrências se estão Maiúscula
Prof. Tarcísio Franco
ou minúscula.
-v efeito inverso, não mostra a linha da
ocorrência
-n mostra, além do texto, o nº da linha
ex.: grep nome arquivo.txt
grep nome /etc/*