quinta-feira, 8 de abril de 2010

Comandos que Tratam Arquivos – Parte 6

cmp

Compara dois arquivos

SINTAXE:

cmp [ -l ][ –s ] arquivo1 arquivo2

DESCRIÇÃO:

-l

exibe, para cada diferença, o nº do byte em decimal e os bytes diferentes em octal.

-s

retorna sometne codigo para o Shell:
0 – arquivos são identicos
1 – arquivos são diferentes
2 – arquivos são inacessiveis ou ausentes
Esses codigos de retorno podem ser visualizados ecoando-se a variavel Shell $?
arquivo1 arquivos que serao comparados
arquivo2 arquivos que serao comparados

COMENTARIOS:

Se a opção –l e –s forem omitidas e os arquivos forem iguais nenhuma informação sera exibida. Se os arquivos forem diferentes, sera exibido o nº do byte e o nº da linha que deu a dirença.

EXEMPLOS:

isis:~ # cmp poema poesia
isis:~ #

isis:~ # cmp poema poesia
poema poesia differ: char 74, line 4
isis:~ #

isis:~ # cmp -l poema poesia
74 141  40
75  40 155
76 155 141
77 141 157
78 157  40
79  40 156
80 156 157
81 157  40
82  40 143
83 143 157
84 157 162
85 162 141
86 141 143
87 143 141
88 141 157
89 157  12
cmp: EOF on poesia
isis:~ #

isis:~ # cmp -s poema poesia
isis:~ # echo $?
1
isis:~ #

diff

Exibe a diferença entre 2 arquivos.

SINTAXE:

diff [ –b ] arquivo1 arquivo2

DESCRIÇÃO:

-b

despresa brancos finais, espaçoes e tabulações para a comparação
arquivo1 arquivos que serão comparados
arquivo2 arquivos que serão comparados

COMENTARIOS:

Outras opções alem de –b podem ser encontrados no manual de referencia do Unix.

No sistema AIX e HP-UX, se os arquivos especificados forem diretorios o comando diff sorteia o conteudo do diretorio e então executa o comando diff nos arquivos textos comuns aos diretorios, exibindo as diferenças que existirem entre os arquivos e os sub-diretorios não comuns aos diretorios comparados.

A exibição das diferenças entre 2 arquivos comuns é dada da seguinte forma:

linhas do arquivo1

ação

linhas do arquivo2

n1,n2

a
c
d

n3,n4

da linha n1 ate a linha n2 ( ou so a linha n1 se não houver n2 ) do primeiro arquivo, mude ( c ) acrescente ( a ) ou delete ( d ) para as linhas n3 ate n4 do segundo arquivo.

EXEMPLOS:

isis:~ # diff poema poesia
4c4
< poe a mao no coracao
---
> poe  mao no coracao
isis:~ #

isis:~ # diff carta carta1
2a3
> sobre o Unix
isis:~ #

Nenhum comentário:

Postar um comentário