Guia do Linux/Iniciante+Intermediário/Comandos diversos/patch
patch
editarAtualiza arquivos texto através das diferenças geradas pelo comando diff
.
patch [opções] [arquivo.diff] ou patch [opções] < [arquivo.diff]
Onde:
- arquivo.diff
- Arquivo contendo as diferenças geradas pelo comando
diff
. - opções
- -p [num]
- Nível do diretório onde o
patch
será aplicado, se igual a 0, opatch
assume que os arquivos que serão atualizados estão no diretório atual, se 1, assume que os arquivos que serão atualizado estão no diretório acima (..), se 2, 2 diretórios acima ... - -b
- Cria cópias de segurança dos arquivos originais ao aplica o patch.
- -binary
- Lê e grava arquivo usando modo binário.
- -d [dir]
- Muda para o diretório [dir] antes de aplica o patch.
- -E
- Remove arquivos vazios após a aplicação do patch.
- -n
- Interpreta o arquivo de patch como um
.diff
normal. - -N
- Não desfaz patches já aplicados.
- -s
- Não mostra mensagens de erro.
- -u
- Interpreta o patch em formato unificado.
As diferenças são aplicadas em arquivos originais gerados pelo comando diff
. É importante entender os comandos patch
e diff
pois são comandos muito utilizados para desenvolvimento feito por equipes de pessoas.
Exemplo:
- patch -p0<texto.diff - Aplica as diferenças contidas no arquivo
texto.diff
nos arquivos originais.
- patch -p0 texto.txt texto.diff - Aplica as diferenças contidas no arquivo
texto.diff
nos arquivos originais. Faz a mesma coisa que o comando anterior.