Il diff è abbreviato in differenze e viene utilizzato per confrontare il contenuto di due file ed elencare le modifiche nell'output standard.
Un insieme di codici sorgente costituisce un pezzo di software. Gli sviluppatori creano il codice sorgente che si evolve nel tempo. Ottenere un nuovo file per ogni aggiornamento non è realistico o richiede molto tempo. Pertanto, il metodo più sicuro consiste nel distribuire solo i miglioramenti. Le modifiche vengono apportate al vecchio file, quindi viene creato un file nuovo o corretto per la nuova versione del software.
Questa guida mostra come utilizzare il comando diff per generare un file patch e quindi applicarlo con il comando patch.
Sintassi:
La sintassi di toppa comando è il seguente:
$toppa [opzioni] [file originale[file di patch]]
$toppa pnum <file di patch>
Creazione di un file di patch utilizzando diff:
File di codice sorgente 1:
In primo luogo, sono necessarie due diverse versioni di un codice sorgente per creare un file di patch. Il file del codice sorgente che ho creato si chiama come miofile.c :S
#includereintprincipale() {
printf ('Ciao LinuxSuggerimento' ');
}
File di codice sorgente 2:
Ora copia il contenuto di miofile.c nel nuovo_miofile.c , utilizzando:
$cpmiofile.c nuovo_miofile.cApportare alcune modifiche al file appena creato:
#includerevuotoprincipale(){
printf ('Ciao suggerimento Linux');
printf ('Benvenuto in linuxhint');
}
Controllo della differenza:
Creiamo un file di patch chiamato as miofile.patch:
$differenza -umiofile.c nuovo_miofile.c<miofile.patch
Puoi stampare il file della patch eseguendo il comando seguente:
$gattomiofile.patch
Applicazione del file patch:
Per applicare la patch, utilizzare:
$toppa <miofile.patch
Assicurati che il file della patch si trovi nella directory in cui si trova il file del codice sorgente.
Fai un backup prima di applicare la patch:
Utilizzo -B opzione per creare un backup del file di patch:
$toppa -B <miofile.patch
Impostazione della versione del file di backup
Se hai bisogno di più backup di un singolo file di backup, usa il -V opzione. Imposta il numero di versione di ciascun file di backup. Esegui il comando indicato di seguito:
$toppa -B -Vnumerato<miofile.patch
Convalida file patch
Se si desidera verificare o osservare l'esito dell'applicazione delle patch, utilizzare -funzionamento a secco opzione. Non apporta alcuna modifica al file originale:
$toppa --funzionamento a secco <miofile.patch
Inverti/Annulla una Patch
L'opzione -R viene utilizzata per invertire o annullare una patch che è già stata applicata.
$toppa <file.patch$ls–l miofile.c
$toppa-R<miofile.patch
$ls–l miofile.c
Conclusione:
Nel sistema operativo Linux, patch è un comando che ci consente di applicare file di patch ai codici sorgente o ai file di configurazione. Il file patch viene utilizzato per l'aggiornamento del software. La differenza tra i file originali e quelli nuovi è contenuta nei file di patch e il comando diff viene utilizzato per ottenere la differenza o la patch. Abbiamo discusso l'uso dei comandi diff e patch con una serie di opzioni come fare backup, eseguire il dry-running e invertire la patch applicata.