diff
O comando é usado para comparar as diferenças entre dois arquivos ou diretórios. Ele compara o conteúdo dos arquivos linha por linha e exibe diferenças em linhas diferentes. diff
O uso e as opções do comando são os seguintes :
Sintaxe básica:
diff [选项] 文件1 文件2
Opções comuns:
-c
ou--context
: mostra diferenças de contexto (3 linhas por padrão)-u
ou--unified
: mostra diferenças em formato uniforme-r
ou--recursive
: compare recursivamente arquivos em diretórios-q
Ou--brief
: exibe apenas se há diferença no arquivo, não exibe o conteúdo específico da diferença-i
ou--ignore-case
: ignorar diferenças no caso-w
ou--ignore-all-space
: ignore todos os caracteres de espaço em branco para diferenças-B
ou--ignore-blank-lines
: ignore as diferenças nas linhas em branco--ignore-file-name-case
: Ignore as diferenças no caso do nome do arquivo
Exemplo de uso:
-
Compare as diferenças de dois arquivos e exiba as diferenças contextuais (padrão 3 linhas):
diff file1.txt file2.txt
-
Exibir diferenças de arquivos usando um formato uniforme:
diff -u file1.txt file2.txt
-
Compare as diferenças de dois diretórios (comparação recursiva):
diff -r dir1 dir2
-
Mostre apenas se há diferença no arquivo e não mostre o conteúdo específico da diferença:
diff -q file1.txt file2.txt
diff
O formato de saída do comando é o seguinte:
>
símbolo indica que a linha só aparece no segundo arquivo.<
O símbolo indica que a linha só aparece no primeiro arquivo.---
marcas entre diferentes parágrafos dos dois documentos.***
Marcas entre parágrafos idênticos em ambos os documentos.
Ao usar diff
o comando para comparar arquivos, a saída mostra as diferenças entre os arquivos em formato de texto. Aqui está um exemplo da saída:
4c4
< This is line 4 in file1.txt.
---
> This is line 4 in file2.txt.
A saída acima indica que há uma diferença na quarta linha nos dois arquivos:
<
Indica que a linha aparece apenas no primeiro arquivo (arquivo1.txt).>
Indica que a linha aparece apenas no segundo arquivo (arquivo2.txt).-
O delimitador indica a diferença entre dois arquivos.- O número antes da primeira seta indica o número da linha no primeiro arquivo.
- O número após a segunda seta indica o número da linha no segundo arquivo.
No exemplo acima, a quarta linha file1.txt
seria "Esta é a linha 4 no arquivo1.txt." e file2.txt
"Esta é a linha 4 no arquivo2.txt." no arquivo .