DIFF(1) Ferramentas GNU DIFF(1)
diff - acha diferena entre dois arquivos
diff [opes] do-arquivo para-arquivo
No caso mais simples, diff compara o contedo de dois arquivos do-
arquivo e para-arquivo. Um nome de arquivo de - significa que o texto
vir da entrada padro. Em um cso especial, diff - - compara a cpia da
entrada padro consigo mesmo.
Se do-arquivo
um diretrio e para-arquivo no , diff compara o arquivo em do-arquivo
que tem aquele nome que de to-file, e vice versa. O arquivo que no
diretrio no pode ser -.
Se ambos do-arquivo e do-arquivo so diretrio, diff compara os arquivos
correspondentes em ambos diretrios, em ordem alfabtica; esta comparao
no recursiva at que a opo seja fornecida -r ou --recursive diff nunca
compara o contedo atual do diretrio como se ele fosse um arquivo. O
arquivo que especificado completamente no pode ser a entrada padro,
por causa que a entrada padro no tem nome e a notao de 'arquivo com o
mesmo nome' no aplicvel. As opes do diff comeam com -, assim normal-
mente do-arquivo e para-arquivo no podem comear com -. De qualquer
forma, --
um argumento para si mesmo tratando o argumento remanesente como um
nome de arquivo mesmo se eles iniciam com -.
Opes
As opes abaixo so um sumrio de todos as opes que o GNU diff aceita.
Muitas opes tem dois nomes equivalente, uma qual uma simples letra
precidida por -, e a outra delas um nome longo precedido de --. Mul-
tiplas opes de letra simples (a menos que eles um argumento) podem ser
combinados em uma simples linha de comando: -ac
equivalente para -a -c. Opes de nomes longos podem ser abreviadas para
qualquer prefixo nico do seu nome. Colchetes ([ e ]) indicam que uma
opo recebida um argumento opcional.
-lines Exibe lines linhas (um valor inteiro) de contexto. Esta opo no
descreve um formato de sada por si mesmo; ela no em efeito at
que ela seja combinada com as opes -c ou -u. Esta opo obso-
leta. Para operao 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 no se parecem com texto.
-b Ignora alteraes em montante de espaos em branco.
-B Ignora alteraes que so inseres ou excluses de linha em branco.
--brief
Relata somente as diferenas entre os arquivos, e no os detalhes
destas diferenas.
-c Use o formato de contexto na sada.
-C linhas
--context[=lines]
Usa o formato de contexto na sada, exibindo lines linhas de con-
texto (um valor inteiro), ou trs se lines no fornecida. Para
operao adequada, patch tipicamente precisa de pelo menos duas
linhas de contexto.
--changed-group-format=format
Use o format de sada como uma linha de grupo contendo linhas
diferenciadas de ambos arquivos no formato if-then-else.
-d Altera o olgortimo para quem sabe achar o menor conjunto de
alteraes. Isto faz diff ficar lento (as vezes muito lento).
-D name
Faz a fuso do formato de sada if-then-else, condicional no pr-
procesador de macros name.
-e
--ed Faz a sada isto um script ed vlido.
--exclude=pattern
Quando comparando diretrios, ignora arquivos e sub-diretrios com
o padro de nomes bsico compatveis.
--exclude-from=file
Quando comparando diretrios, ignora arquivos e sub-diretrios com
o o padro de nomes bsico compatveis em file.
--expand-tabs
Aumenta a tabulao para espaos na sada, para preservar o alinham-
neto de tabulaes no arquivos de entrada.
-f Faz sada tenha um aspecto vagamente como se fosse um script ed
mas tem alteraes na ordem que eles aparecem no arquivo.
-F regexp
No contexto e no formato unificado, para cada pedao grande de
diferenas, exibe um tanto das linhas precedentes que combinam
com regexp.
--forward-ed
Faz sada tenha um aspecto vagamente como se fosse um script ed
mas tem alteraes na ordem que eles aparecem no arquivo.
-h Esta opo no tem efeito atualmente, ela est presente para compat-
ibilidade com o Unix.
-H Usa heuristica para tratamento rpido de arquivos longos que tem
numerosas e pequenas alteraes espalhadas.
--horizon-lines=lines
No descarta as ltimas lines linhas de um prefixo comum e as
primeiras lines do sufixo comum.
-i Ignora alteraes no caso; considera letras maiusclas e minusclas
equivalentes.
-I regexp
Ignora alteraes que justamnete insere ou exclue linhas que com-
binam regexp.
--ifdef=name
Faz a fuso do formato de sada if-then-else, condicional no pr-
procesador de macros name.
--ignore-all-space
Ignora espaos em branco quando comparando linhas.
--ignore-blank-lines
Ignora alteraes que so inseres ou excluses de linha em branco.
--ignore-case
Ignora alteraes no caso; considera letras maiusclas e minusclas
equivalentes.
--ignore-matching-lines=regexp
Ignora alteraes no caso; considera letras maiusclas e minusclas
equivalentes regexp.
--ignore-space-change
Ignora alteraes no montante de espae em branco.
--initial-tab
Sa uma tabulao preferencialmente o mesmo que espao antes do
texto da linha em formato normal ou de contexto. Isto faz o
alinhamenteo de tabulaes nas linhas aparecerem normais.
-l Transmite a sada atravs de pr para pagin-la.
-L label
--label=label
Usa label ao invs de nomes de arquivos nos formatos de contexto
e cabealho unificado.
--left-column
Imprime somente a coluna esquerda de duas linha comuns no for-
mato lado a lado.
--line-format=format
Usa format para sair todos as linhas de entrado no formato in-
then-else.
--minimal
Altera o algortimo que quem sabe achar o menor conjunto de
alteraes. Isto faz diff ficar lento (s vezes muito lento).
-n Sada no formato RCS, como -f exceto que cada comando especifica
o nmero de linhas afetadas.
-N
--new-file
Na comparao de diretrios, se um arquivo achado em somente um
diretrio, trata ele como presente mas vazio no outro diretrio.
--new-group-format=format
Usa o format para sadas em linha de grupo de linhas tiradas jus-
tamente do segundo arquivo no formato if-then-else.
--new-line-format=format
Usa o format para sadas de linhas tiradas justamento do segundo
arquivo no formato if-then-else.
--old-group-format=format
Usa o format para sadas em linha de grupo de linhas tiradas jus-
tamente do primeiro arquivo no formato if-then-else.
--old-line-format=format
Usa o format para sadas de linhas tiradas justamento do primeiro
arquivo no formato if-then-else.
-p Exibe em quais funes C cada alterao est interna.
-P Quando comparando diretrios, se um arquivo aparece somente no
segundo diretrio dos dois, trata ele como presente mas vazio no
outro.
--paginate
Passa a sada atravs pr para pagin-la.
-q Relata somente se os arquivos diferem, e no as diferenas entre
eles.
-r Quando comparando diretrios, compara sub-diretrios encontrados
de forma recursiva.
--rcs Sada no formato RCS, como -f exceto que cada comando especifica
o nmero de linhas afetadas.
--recursive
Quando comparando diretrios, compara sub-diretrios encontrados
de forma recursiva.
--report-identical-files
-s Relata quando dois arquivos so iguais.
-S file
Quando comparando diretris, comea com o arquivo file. Isto
usado para reiniciar um comparao cancelada.
--sdiff-merge-assist
Imprime informaes extras para ajudar sdiff. sdiff usa esta opo
quando executar diff. Esta opo no est destinada a usurios para
uso diretamente.
--show-c-function
Exibe em quais funes C cada alterao est interna.
--show-function-line=regexp
Nos formatos de contexto e unificada, para cada grande pedao de
diferenas, exibe algumas linhas precedentes que combinam regexp.
--side-by-side
Usa o format de sada lado a lado.
--speed-large-files
Usa heuristica para tratamento rpido de arquivos longos que tem
numerosas e pequenas alteraes espalhadas.
--starting-file=file
Quando comparando diretrios, inicia com o arquivo file. Isto
usado para reiniciar um comparao cancelada.
--suppress-common-lines
No imprime linhas comuns no formato lado a lado.
-t Aumenta a tabulao para espaos na sada, para preservar o alinham-
neto de tabulaes no arquivos de entrada.
-T Sa uma tabulao preferencialmente o mesmo que espao antes do
texto da linha em formato normal ou de contexto. Isto faz o
alinhamenteo de tabulaes nas linhas aparecerem normais.
--text Trata todos os arquivos como texto e compara-os linha por linha,
mesmo se eles no se parecem com texto.
-u Usa o formato de sada unificado.
--unchanged-group-format=format
Usa o format para sada em linhas comuns de grupo tiradas de
ambos arquivos no formato if-then-else.
--unchanged-line-format=format
Usa o format para sadas em linhas comuns de ambos arquivos no
formato if-then-else.
--unidirectional-new-file
Quando comparando diretrios, se um arquivo aparece somente no
segundo diretrio dos dois, trata ele como presente mas vazio no
outro.
-U lines
--unified[=lines]
Usa o formato unificado na sada, exibindo lines linhas de con-
texto (um valor inteiro), ou trs se lines no fornecida. Para
operao adequada, patch tipicamente precisa de pelo menos duas
linhas de contexto.
-v
--version
Sa o nmero de verso do diff.
-w Ignora espaos em branco quando comparando linhas.
-W columns
--width=columns
Usa um sada de colunas com largura columns no formato lado a
lado.
-x pattern
Quando comparado diretrios, ignora arquivos e sub-diretrios
pertecente a eles com nomes bases compatvel ao pattern.
-X file
Quando comparado diretrios, ignora arquivos e sub-diretrios
pertecente a eles com nomes bases compatvel com qualquer padro
contido no file.
-y Usa o formato de sada lado a lado.
cmp(1), comm(1), diff3(1), ed(1), patch(1), pr(1), sdiff(1).
Uma sada de status de 0 significa que no foram encontradas diferenas, 1
significa que algumas diferenas foram encontradas, e 2 significa prob-
lemas.
Andr Luiz Fassone Canova <alf [AT] techno.br> (traduo) Carlos Augusto
Horylka <horylka [AT] conectiva.br> {reviso}
Ferramentas GNU 22/09/1993 DIFF(1)