Vous êtes sur la page 1sur 28

Administrao de Sistemas Operacionais Abertos

Prof. MSc. Jos Hermano Cavalcanti Filho

jose.cavalcan8@ifpb.edu.br

h"p://www.ifpb.edu.br
Entrada e sada padro de dados e sada padro de erros

n Os programas utilitrios ou comandos do Linux


desempenham funes simples e bem definidas;

n Os comandos obtm dados como entrada, executam o


processamento desses dados e fornecem resultados como
sada;

n No Linux, a entrada padro de dados o teclado, a sada


padro de dados o monitor e a sada padro de erros
tambm o monitor;
Entrada e sada padro de dados e sada padro de erros
Redirecionamento de entrada e sada

n Para redirecionar arquivos padro, devemos usar


combinaes de redirecionamentos e descritores de
arquivos;

n Os descritores de arquivos s so obrigatrios no


redirecionamento de erros;

n Os descritores de arquivo utilizados no redirecionamento


so:

q 0 para o arquivo de entrada padro;


q 1 para o arquivo de sada padro;
q 2 para o arquivo de erro padro;
Redirecionamento de entrada e sada

n O Linux oferece a possibilidade de alterar a entrada e a sada


padro de dados, bem como a sada padro de erros;

n Exemplo: o programa consulta solicita o nmero de um


cliente como entrada do teclado e apresenta seus dados
como sada na tela:

q # consulta 12345
q Cliente n.: 12345
q Nome: Aluno1
q Endereo: Rua Jos Maria, 110
q Cidade: Picu
q Estado: PB
Redirecionamento de entrada e sada

n A listagem dos nmeros dos clientes est no arquivo


numeros e a entrada-padro do comando consulta ser
redirecionada atravs do operador de redirecionamento de
entrada <:
q # ./consulta < numeros

n O caractere > instrui o interpretador de comandos (shell) a


executar o programa consulta utilizando como sada-padro
a impressora, em vez do monitor de vdeo:
q # ./consulta > /dev/lp

n Podemos utilizar o redirecionamento de entrada juntamente


como o de sada como no exemplo:
q # ./consulta < numeros > clientes
Redirecionamento de entrada e sada
Pipe ou canalizao

n Os utilitrios do Linux desempenham funes especficas.


Tarefas mais complexas so executadas pela combinao
sequencial de utilitrios ou comandos;

n Um pipe usado para executar uma sequncia de


comandos, passando a sada de um comando diretamente a
outro comando, que a utilizar como entrada de dados;
Pipe ou canalizao

n Exemplo: colocar os clientes em ordem numrica e mostrar


suas informaes por meio do programa consulta na tela do
monitor;

n O comando sort usado para ordenar os nmeros dos


clientes em ordem crescente;
q # sort numeros > temp
q # ./consulta < temp

n O mesmo resultado pode ser conseguido utilizando apenas


uma linha de comando, conectando os comandos atravs de
um pipe:
q # sort numeros | consulta
Pipe ou canalizao
Exerccio de fixao 1 Comando sort

1) Qual a utilidade do comando sort?

2) Atravs da pgina de manual do comando, encontre a


opo que organiza o arquivo com base nas colunas.

3) Pesquise trs opes do comando sort.


Substituindo nomes de arquivos

n O comando mv move o arquivo da origem para o destino,


fazendo uma cpia no local de destino e eliminando o
arquivo do local de origem;

n O comando mv tambm pode ser utilizado para mudar o


nome de arquivos. importante lembrar que o arquivo
original no ser mantido aps ser renomeado;

n A forma do comando mv :

q # mv [opes] origem destino


Substituindo nomes de arquivos

n O comando rename pode ser utilizado exclusivamente para


trocar os nomes de arquivos, mas com a funcionalidade
adicional de trocar parte do nome dos arquivos.

n O comando abaixo pode ser usado para trocar as


terminaes de todos os arquivos do diretrio corrente
de .htm para .html

q # rename .htm .html *.htm


Visualizando o contedo de arquivos

n O comando cat tem a funo principal de concatenar


arquivos, mas pode ser utilizado para mostrar o contedo de
um arquivo:

q # cat [opes] arquivo

n O comando cat no controla a exibio na tela, deixando-a


rolar at o final do arquivo e dificultando a sua visualizao;

n Devemos utilizar os comandos more ou less, que do uma


pausa na listagem quando ela preenche toda a tela.

q # more [opes] [+/padro] [+numerolinha] arquivo


q # less [opes] arquivo
Exerccio de fixao 2 Visualizando contedo de arquivos

1) Quais recursos o comando less possui a mais que o


comando more?
Contabilizando o contedo de arquivos

n O comando wc conta e imprime o nmero de caracteres, de


palavras ou de linhas de um arquivo:

q # wc [opes] arquivo

n Opes do comando wc:

q -l conta o nmero de linhas do arquivo;


q -w conta o nmero de palavras do arquivo;
q -c conta o nmero de caracteres do arquivo;

n Caso no seja especificado nenhum arquivo, o comando wc


l a entrada padro. Se no for escolhida uma opo, o
comando wc conta e retorna todas as opes anteriores.
Contabilizando o contedo de arquivos

n Exemplo:

q # ls /etc | wc -l
Exibindo o contedo inicial e final de arquivos

n Para exibir o incio e o final do contedo de um arquivo, so


utilizados os comandos head e tail, respectivamente;

n O comando head permite que visualizemos as primeiras


linhas de um arquivo. O exemplo abaixo exibe as cinco
primeiras linhas do arquivo relatorio.txt

q # head -5 relatorio.txt

n O comando tail mostra as ltimas linhas de um arquivo. O


comando do exemplo abaixo exibe as ltimas quinze linhas
do arquivo relatorio.txt

q # tail -15 relatorio.txt


Exibindo o contedo inicial e final de arquivos

n Se no forem especificados os nmeros de linhas a serem


exibidas, os comandos head e tail retornaro as primeiras ou
ltimas dez linhas, respectivamente;
Exerccio de fixao 3 Exibindo o contedo de arquivos

1) Que sadas sero mostradas com os comandos a seguir?

q ls la .
q ls l ..
q ls l /etc/resolv.conf | wc l
q ls /etc | wc -c
Selecionando trechos de arquivos

n O comando grep usado para seleo e pesquisa de


arquivos, por meio de um padro especificado pelo usurio;

n Quando o padro encontrado, a linha copiada para o


arquivo de sada. Se a linha no contm o padro,
rejeitada;

n Quando o comando grep terminar de pesquisar os arquivos


de entrada, o arquivo de sada conter todas as linhas que
contm os padres desejados:

q # grep [opes] padro arquivo

q Se no for especificado nenhum arquivo, o comando grep l


a entrada padro
Selecionando trechos de arquivos

n O utilitrio grep funciona tambm como um filtro de


canalizao, selecionando algumas sadas do comando
anterior e enviando o resultado para a entrada do comando
seguinte;

n Podemos usar caracteres especiais que do maior


flexibilidade ao comando grep;
Selecionando trechos de arquivos
Comparao entre arquivos

n O comando cmp compara os arquivos e mostra a posio


em que aparece a primeira diferena;

n O exemplo a seguir compara dois arquivos que tm um


caractere diferente na posio 17 da linha 10:

q # cmp arquivo1 arquivo2


arquivo1 arquivo2 differ: char 17, line 10
Comparao entre arquivos

n O comando diff gera aes que incluem adio de uma linha,


eliminao de uma linha ou mudana de uma linha;

q O comando patch utilizado para ler a lista de aes


geradas pelo diff e fazer as devidas alteraes no arquivo
original para deix-lo igual ao arquivo editado;

q O comando diff pode ser muito eficiente para guardar


diferentes verses do mesmo arquivo, armazenando apenas
as diferenas entre eles, com isso, economizando espao
em disco;
Ordenao em arquivos

n O comando sort obtm as linhas de um ou mais arquivos de


entrada e produz um arquivo de sada com as linhas em
ordem classificada;

n Sintaxe do comando sort:

q # sort -[opes] arquivo

n Cada linha de um arquivo de entrada tratada como


campos, separados uns dos outros por espaos, como se
fossem colunas;
Ordenao em arquivos
Obrigado!

Administrao de Sistemas Operacionais Abertos


Prof. MSc. Jos Hermano Cavalcanti Filho

jose.cavalcan8@ifpb.edu.br

h"p://www.ifpb.edu.br