Guia do Linux/Iniciante+Intermediário/Comandos diversos/diff: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
Conteúdo apagado Conteúdo adicionado
mSem resumo de edição |
formatando com ajuda de conversores |
||
Linha 1:
== 10.33 diff ==
Compara dois arquivos e mostra as diferenças entre eles. O comando <code>diff</code> é usado somente para a comparação de arquivos em formato texto. As diferenças encontradas podem ser redirecionadas para um arquivo que poderá ser usado pelo comando <code>patch</code> para aplicar as alterações em um arquivo que não contém as diferenças. Isto é útil para grandes textos porque é possível copiar somente as modificações (geradas através do diff, que são muito pequenas) e aplicar no arquivo para atualiza-lo (através do <code>patch</code>) ao invés de copiar a nova versão. Este é um sistema de atualização muito usado na atualização dos código fonte do kernel do <code>GNU/Linux</code>.
diff [''diretório1/arquivo1''] [''diretório2/arquivo2''] [''opções'']
Opções:
; ''diretório1/arquivo1 diretório2/arquivo2''
: Arquivos /diretórios que serão comparados. Normalmente é usado como primeiro arquivo/diretório o mais antigo e o mais novo como segundo.
; ''opções''
; -lines [num]
: Gera a diferença com [num] linhas de contexto. Por padrão o <code>diff</code> gera um arquivo com 2 linhas que é o mínimo necessário para o correto funcionamento do <code>patch</code>.
; -a
: Compara os dois arquivos como arquivos texto.
; -b
: Ignora espaços em branco como diferenças.
; -B
: Ignora linhas em branco inseridas ou apagadas nos arquivos.
; -i
: Ignora diferenças entre maiúsculas e minúsculas nos arquivos.
; -H
: Usa análise heurística para verificar os arquivos.
; -N
: Em uma comparação de diretórios, se o arquivo apenas existe em um diretório, trata-o como presente mas vazio no outro diretório.
; -P
: Em uma comparação de diretórios, se o arquivos apenas existe no segundo diretório, trata-o como presente mas vazio no primeiro diretório.
; -q
: Mostra somente se os dois arquivos possuem diferenças. Não mostra as diferenças entre eles.
; -r
: Compara diretórios e sub-diretórios existentes.
; -S [nome]
: Inicia a comparação de diretórios pelo arquivo [nome]. É útil quando cancelamos uma comparação.
; -t
: Aumenta a tabulação das diferenças encontradas.
; -u
: Usa o formato de comparação unificado.
Use o comando <code>zdiff</code> para comparar diretamente arquivos compactados pelo utilitário <code>gzip</code>
Use o comando <code>sdiff</code> para visualizar as linhas diferentes entre os dois arquivos em formato texto simples.
Exemplo:
* diff texto.txt texto1.txt - Compara o arquivo <code>texto.txt</code> com <code>texto1.txt</code> e exibe suas diferenças na tela.
* diff -Bu texto.txt texto1.txt - Compara o arquivo <code>texto.txt</code> com <code>texto1.txt</code> ignorando linhas em branco diferentes entre os dois arquivos e usando o formato unificado.
* diff texto.txt texto1.txt &gt;texto.diff - Compara o arquivo <code>texto.txt</code> com <code>texto1.txt</code> e gera um arquivo chamado <code>texto.diff</code> contendo a diferença entre eles. Este arquivo poderá ser usado pelo <code>patch</code> para aplicar as diferenças existente entre os dois no arquivo <code>texto.txt</code>.
* diff -r /usr/src/linux-2.2.13 /usr/src/linux-2.2.14 &gt;patch-2.2.14.diff - Compara o diretório e sub-diretórios <code>linux-2.2.13</code> e <code>linux-2.2.14</code> e grava as diferenças entre eles no arquivo <code>patch-2.2.14.diff</code>.
{{AutoNav}}
|