Comandi Linux

Come eseguire il comando patch in Linux?

Come eseguire il comando patch in Linux?
La "patch" è un comando per aggiungere file di patch al codice sorgente o ai file di testo. Prende input come file di patch e applica le differenze ai file originali. Usiamo lo strumento "diff" per ottenere la differenza.

Il "diff" è abbreviato come "differenze" e viene utilizzato per confrontare il contenuto di due file ed elencare le modifiche nello standard output.

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 tempo time. Pertanto, il metodo più sicuro è distribuire solo 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 del "patch"comando è il seguente:

$ patch [opzioni] [file originale [file patch]]
$ patch -pnum

Creazione di un file 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 "il mio file.c":S

#includere
int main()
printf("Ciao LinuxHint\n");

File di codice sorgente 2:

Ora copia il contenuto di il mio file.c nel nuovo_miofile.c, utilizzando:

$ cp miofile.c nuovo_miofile.c

Apportare alcune modifiche al file appena creato:

#includere
vuoto principale()
printf("Ciao suggerimento Linux");
printf("Benvenuto in linuxhint");

Controllo della differenza:

Creiamo un file di patch chiamato as il mio file.cerotto:

$ diff -u miofile.c nuovo_miofile.c

Puoi stampare il file della patch eseguendo il comando seguente:

$ cat miofile.patch

Applicazione del file patch:

Per applicare la patch, utilizzare:

$ patch < myfile.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:

Uso "-b"opzione per creare un backup del file di patch:

$ patch -b < myfile.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 ogni file di backup. Esegui il comando indicato di seguito:

$ patch -b -V numerato < myfile.patch

Convalida file patch Patch

Se si desidera verificare o osservare l'esito dell'applicazione di patch, utilizzare "-funzionamento a secco" opzione. Non apporta alcuna modifica al file originale:

$ patch --dry-run < myfile.patch

Inverti/Annulla una Patch

L'opzione "-R" viene utilizzata per invertire o annullare una patch che è già stata applicata.

$ patch < file.patch
$ ls -l miofile.c
$ patch -R < myfile.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 eseguire backup, eseguire l'esecuzione a secco e invertire la patch applicata.

Installa l'ultimo gioco di strategia OpenRA su Ubuntu Linux
OpenRA è un motore di gioco di strategia in tempo reale gratuito/libero che ricrea i primi giochi di Westwood come il classico Command & Conquer: Red ...
Installa l'ultimo Dolphin Emulator per Gamecube e Wii su Linux
L'emulatore Dolphin ti consente di giocare ai giochi Gamecube e Wii scelti su Personal Computer Linux (PC). Essendo un emulatore di giochi liberament...
Come utilizzare GameConqueror Cheat Engine in Linux
L'articolo copre una guida sull'utilizzo del motore cheat GameConqueror in Linux. Molti utenti che giocano su Windows utilizzano spesso l'applicazione...