NOME
diff − acha diferença entre dois arquivos
SINOPSE
diff [opções] do-arquivo para-arquivo
DESCRIÇÃO
No caso mais simples, diff compara o conteúdo de dois arquivos do-arquivo e para-arquivo. Um nome de arquivo de − significa que o texto virá da entrada padrão. Em um cso especial, diff − − compara a cópia da entrada padrão consigo mesmo.
Se do-arquivo é um diretório e para-arquivo não é, diff compara o arquivo em do-arquivo que tem aquele nome que é de to-file, e vice versa. O arquivo que não é diretório não pode ser −.
Se ambos do-arquivo e do-arquivo são diretório, diff compara os arquivos correspondentes em ambos diretórios, em ordem alfabética; esta comparação não é recursiva até que a opção seja fornecida −r ou −−recursive diff nunca compara o conteúdo atual do diretório como se ele fosse um arquivo. O arquivo que é especificado completamente não pode ser a entrada padrão, por causa que a entrada padrão não tem nome e a notação de ’arquivo com o mesmo nome’ não é aplicável. As opções do diff começam com −, assim normalmente do-arquivo e para-arquivo não podem começar com −. De qualquer forma, −− é um argumento para si mesmo tratando o argumento remanesçente como um nome de arquivo mesmo se eles iniciam com −.
Opções
As opções abaixo são um sumário
de todos as opções que o GNU diff
aceita. Muitas opções tem dois nomes
equivalente, uma qual é uma simples letra precidida
por −, e a outra delas é um nome longo
precedido de −−. Multiplas
opções de letra simples (a menos que eles um
argumento) podem ser combinados em uma simples linha de
comando: −ac é equivalente para
−a −c. Opções de nomes
longos podem ser abreviadas para qualquer prefixo
único do seu nome. Colchetes ([ e ])
indicam que uma opção recebida é um
argumento opcional.
−lines |
Exibe lines linhas (um valor inteiro) de contexto. Esta opção não descreve um formato de saída por si mesmo; ela não em efeito até que ela seja combinada com as opções −c ou −u. Esta opção é obsoleta. Para operação adequada, patch tipicamente precisa de pelo menos duas linhas de contexto. | ||
−a |
Trata todos os arquivos como texto e compara-os linha por linha, mesmo se eles não se parecem com texto. | ||
−b |
Ignora alterações em montante de espaços em branco. | ||
−B |
Ignora alterações que são inserções ou exclusões de linha em branco. |
−−brief
Relata somente as diferenças entre os arquivos, e não os detalhes destas diferenças.
−c |
Use o formato de contexto na saída. |
−C linhas
−−context[=lines]
Usa o formato de contexto na saída, exibindo lines linhas de contexto (um valor inteiro), ou três se lines não é fornecida. Para operação adequada, patch tipicamente precisa de pelo menos duas linhas de contexto.
−−changed−group−format=format
Use o format de saída como uma linha de grupo contendo linhas diferenciadas de ambos arquivos no formato if-then-else.
−d |
Altera o algoritmo para quem sabe achar o menor conjunto de alterações. Isto faz diff ficar lento (as vezes muito lento). |
−D name
Faz a fusão do formato de saída if-then-else, condicional no pré-procesador de macros name.
−e |
||||
−−ed |
Faz a saída isto é um script ed válido. |
−−exclude=pattern
Quando comparando diretórios, ignora arquivos e sub-diretórios com o padrão de nomes básico compatíveis.
−−exclude−from=file
Quando comparando diretórios, ignora arquivos e sub-diretórios com o o padrão de nomes básico compatíveis em file.
−−expand−tabs
Aumenta a tabulação para espaços na saída, para preservar o alinhamneto de tabulações no arquivos de entrada.
−f |
Faz saída tenha um aspecto vagamente como se fosse um script ed mas tem alterações na ordem que eles aparecem no arquivo. |
−F regexp
No contexto e no formato unificado, para cada pedaço grande de diferenças, exibe um tanto das linhas precedentes que combinam com regexp.
−−forward−ed
Faz saída tenha um aspecto vagamente como se fosse um script ed mas tem alterações na ordem que eles aparecem no arquivo.
−h |
Esta opção não tem efeito atualmente, ela está presente para compatibilidade com o Unix. | ||
−H |
Usa heuristica para tratamento rápido de arquivos longos que tem numerosas e pequenas alterações espalhadas. |
−−horizon−lines=lines
Não descarta as últimas lines linhas de um prefixo comum e as primeiras lines do sufixo comum.
−i |
Ignora alterações no caso; considera letras maiuscúlas e minuscúlas equivalentes. |
−I regexp
Ignora alterações que justamnete insere ou exclue linhas que combinam regexp.
−−ifdef=name
Faz a fusão do formato de saída if-then-else, condicional no pré-procesador de macros name.
−−ignore−all−space
Ignora espaços em branco quando comparando linhas.
−−ignore−blank−lines
Ignora alterações que são inserções ou exclusões de linha em branco.
−−ignore−case
Ignora alterações no caso; considera letras maiuscúlas e minuscúlas equivalentes.
−−ignore−matching−lines=regexp
Ignora alterações no caso; considera letras maiuscúlas e minuscúlas equivalentes regexp.
−−ignore−space−change
Ignora alterações no montante de espaçõe em branco.
−−initial−tab
Saí uma tabulação preferencialmente o mesmo que espaço antes do texto da linha em formato normal ou de contexto. Isto faz o alinhamenteo de tabulações nas linhas aparecerem normais.
−l |
Transmite a saída através de pr para paginá-la. |
−L label
−−label=label
Usa label ao invês de nomes de arquivos nos formatos de contexto e cabeçalho unificado.
−−left−column
Imprime somente a coluna esquerda de duas linha comuns no formato lado a lado.
−−line−format=format
Usa format para sair todos as linhas de entrado no formato in-then-else.
−−minimal
Altera o algoritmo que quem sabe achará o menor conjunto de alterações. Isto faz diff ficar lento (às vezes muito lento).
−n |
Saída no formato RCS, como −f exceto que cada comando especifica o número de linhas afetadas. | ||
−N |
−−new−file
Na comparação de diretórios, se um arquivo é achado em somente um diretório, trata ele como presente mas vazio no outro diretório.
−−new−group−format=format
Usa o format para saídas em linha de grupo de linhas tiradas justamente do segundo arquivo no formato if-then-else.
−−new−line−format=format
Usa o format para saídas de linhas tiradas justamento do segundo arquivo no formato if-then-else.
−−old−group−format=format
Usa o format para saídas em linha de grupo de linhas tiradas justamente do primeiro arquivo no formato if-then-else.
−−old−line−format=format
Usa o format para saídas de linhas tiradas justamento do primeiro arquivo no formato if-then-else.
−p |
Exibe em quais funções C cada alteração está interna. | ||
−P |
Quando comparando diretórios, se um arquivo aparece somente no segundo diretório dos dois, trata ele como presente mas vazio no outro. |
−−paginate
Passa a saída através pr para paginá-la.
−q |
Relata somente se os arquivos diferem, e não as diferenças entre eles. | ||
−r |
Quando comparando diretórios, compara sub-diretórios encontrados de forma recursiva. | ||
−−rcs |
Saída no formato RCS, como −f exceto que cada comando especifica o número de linhas afetadas. |
−−recursive
Quando comparando diretórios, compara sub-diretórios encontrados de forma recursiva.
−−report−identical−files
−s |
Relata quando dois arquivos são iguais. |
−S file
Quando comparando diretóris, começa com o arquivo file. Isto é usado para reiniciar um comparação cancelada.
−−sdiff−merge−assist
Imprime informações extras para ajudar sdiff. sdiff usa esta opção quando executar diff. Esta opção não está destinada a usuários para uso diretamente.
−−show−c−function
Exibe em quais funções C cada alteração está interna.
−−show−function−line=regexp
Nos formatos de contexto e unificada, para cada grande pedaço de diferenças, exibe algumas linhas precedentes que combinam regexp.
−−side−by−side
Usa o format de saída lado a lado.
−−speed−large−files
Usa heuristica para tratamento rápido de arquivos longos que tem numerosas e pequenas alterações espalhadas.
−−starting−file=file
Quando comparando diretórios, inicia com o arquivo file. Isto é usado para reiniciar um comparação cancelada.
−−suppress−common−lines
Não imprime linhas comuns no formato lado a lado.
−t |
Aumenta a tabulação para espaços na saída, para preservar o alinhamneto de tabulações no arquivos de entrada. | ||
−T |
Saí uma tabulação preferencialmente o mesmo que espaço antes do texto da linha em formato normal ou de contexto. Isto faz o alinhamenteo de tabulações nas linhas aparecerem normais. | ||
−−text |
Trata todos os arquivos como texto e compara-os linha por linha, mesmo se eles não se parecem com texto. | ||
−u |
Usa o formato de saída unificado. |
−−unchanged−group−format=format
Usa o format para saída em linhas comuns de grupo tiradas de ambos arquivos no formato if-then-else.
−−unchanged−line−format=format
Usa o format para saídas em linhas comuns de ambos arquivos no formato if-then-else.
−−unidirectional−new−file
Quando comparando diretórios, se um arquivo aparece somente no segundo diretório dos dois, trata ele como presente mas vazio no outro.
−U lines
−−unified[=lines]
Usa o formato unificado na saída, exibindo lines linhas de contexto (um valor inteiro), ou três se lines não é fornecida. Para operação adequada, patch tipicamente precisa de pelo menos duas linhas de contexto.
−v |
−−version
Saí o número de versão do diff.
−w |
Ignora espaços em branco quando comparando linhas. |
−W columns
−−width=columns
Usa um saída de colunas com largura columns no formato lado a lado.
−x pattern
Quando comparado diretórios, ignora arquivos e sub-diretórios pertecente a eles com nomes bases compatível ao pattern.
−X file
Quando comparado diretórios, ignora arquivos e sub-diretórios pertecente a eles com nomes bases compatível com qualquer padrão contido no file.
−y |
Usa o formato de saída lado a lado. |
VEJA TAMBÉM
cmp(1), comm(1), diff3(1), ed(1), patch(1), pr(1), sdiff(1).
DIAGNÓSTICO
Uma saída de status de 0 significa que não foram encontradas diferenças, 1 significa que algumas diferenças foram encontradas, e 2 significa problemas.
TRADUZIDO POR LDP-BR em 21/08/2000.
André Luiz Fassone Canova <alf [AT] techno.br> (tradução) Carlos Augusto Horylka <horylka [AT] conectiva.br> {revisão}