Movatterモバイル変換


[0]ホーム

URL:


Ir para o conteúdo
Wikipédia
Busca

diff

Origem: Wikipédia, a enciclopédia livre.
Captura de tela de um Tkdiff

Emcomputação,diff é um utilitário decomparação de arquivos que analisa e exibe as diferenças entre dois arquivos texto por linha.[1] É normalmente usado para mostrar as mudanças entre uma versão de um arquivo e a versão anterior do mesmo arquivofonte ou de configuração.[2]

Odiff mostra as alterações realizadas por linha para arquivos de texto. Implementações modernas também suportamarquivos binários. A saída é chamada de um "diff", ou um patch (remendo),[3] uma vez que a saída pode ser aplicada com o programapatch doUnix.[4] Nalíngua inglesa, a saída de utilitários similares de comparação de arquivos também são chamadas de um "diff". Assim como o uso da palavra "grep" para descrever o ato de procurar, a paravradiff é usada comojargão para diferença.[5]

História

[editar |editar código]

O diff foi desenvolvido próximo de 1970 nosistema operacional Unix, que estava surgindo daBell Labs. A primeira versão foi lançada junto com a 5° edição do Unix em 1974, e foi escrita porDouglas McIlroy, eJames Hunt.[6] A pesquisa foi publicada em 1976 no artigo co-escrito com James W. Hunt, que desenvolveu o protótipo original do diff. O algoritmo descrito pelo artigo ficou conhecido poralgoritmo Hunt-Szymanski.

Algoritmo

[editar |editar código]

A operação de diff é baseado na solução doproblema de maior subsequência comum (LCS).

Neste problema, são dadas duas sequências de itens:

abcdfg hj qz
abcd ef g i j k r x yz

e nós queremos achar a maior subsequência de itens que está presente em ambos as sequências na mesma ordem. Ou seja, queremos achar uma nova sequência por deletar alguns itens da primeira sequência original, e da segunda por deletar outros itens. Também queremos que esse sequência seja a mais longa possível. No caso seria:

a b c d e f g j z

Isso é apenas um pequeno passo para conseguirmos uma saída parecida com diff: se um item não existe na subsequência mas está presente na primeira sequência original, ele deve ser deletado (como indicado pelo marcador '-', abaixo). Se um item não existe na subsequência mas está presente na segunda sequência original, ele deve ser adicionado (como indicado pelo marcador '+').

e  h i  q  k r x y+  - +  -  + + + +

Ver também

[editar |editar código]

Referências

  1. «Comandos Linux – Comando diff». Linux Force Security. 5 de abril de 2019. Consultado em 27 de dezembro de 2021.Nos sistemas operacionais do tipo Unix, o comando diff analisa dois arquivos e imprime as linhas diferentes. 
  2. «Linux diff – How to Compare Two Files and Apply Changes with the Patch Command». freeCodeCamp. 15 de setembro de 2021. Consultado em 27 de dezembro de 2021.Comparing files and finding the differences between them is a widely used operation. This is specially useful when you have to compare complex code or configuration files. 
  3. «How to Compare Two Files in Linux». linuxhint. Consultado em 27 de dezembro de 2021.The “diff” command is also used by the programmers to get the difference between two source code files to develop patches. 
  4. «7 Patch Command Examples to Apply Diff Patch Files in Linux». The Geek Stuff. 2 de dezembro de 2014. Consultado em 27 de dezembro de 2021 
  5. «diff». Cambridge Dictionary. Consultado em 27 de dezembro de 2021.short for difference 
  6. Hunt, James W.;McIlroy, M. Douglas (junho de 1976).«An Algorithm for Differential File Comparison»(PDF). Bell Laboratories.Computing Science Technical Report.41 

Ligações externas

[editar |editar código]
Arquivos
Processos e tarefas
Ambiente e usuários
Processamento de texto
Shell
Redes e comunicação
Busca
Documentação
Miscelâneas
Comandos geralmente implementados no interpretador.
Comando geralmente implementados, tanto como executáveis, como quanto no interpretador.
Ícone de esboçoEste artigo sobrecomputação é umesboço. Você pode ajudar a Wikipédiaexpandindo-o.
Obtida de "https://pt.wikipedia.org/w/index.php?title=Diff&oldid=66989806"
Categorias:
Categorias ocultas:

[8]ページ先頭

©2009-2026 Movatter.jp