Linux-Befehle

So führen Sie den Befehl patch unter Linux aus?

So führen Sie den Befehl patch unter Linux aus?
Der „Patch“ ist ein Befehl zum Hinzufügen von Patch-Dateien zu Quellcode oder Textdateien. Es nimmt Eingaben als Patch-Datei an und wendet Unterschiede auf Originaldateien an. Wir verwenden das „diff“-Tool, um den Unterschied zu ermitteln.

Das „diff“ wird als „Differenzen“ abgekürzt und wird verwendet, um den Inhalt zweier Dateien zu vergleichen und die Änderungen in der Standardausgabe aufzulisten.

Eine Reihe von Quellcodes bildet eine Software. Entwickler erstellen den Quellcode, der sich im Laufe der Zeit entwickelt. Es ist unrealistisch oder zeitaufwändig, für jedes Update eine neue Datei zu erhalten. Daher ist es am sichersten, nur Verbesserungen zu verteilen. Die Änderungen werden an der alten Datei vorgenommen und dann wird eine neue oder gepatchte Datei für die neue Softwareversion erstellt created.

Diese Anleitung zeigt Ihnen, wie Sie mit dem Befehl „diff“ eine Patch-Datei generieren und diese dann mit dem Befehl „patch“ anwenden apply.

Syntax:

Die Syntax des „Patch”-Befehl lautet wie folgt:

$ patch [Optionen] [Originaldatei [Patchdatei]]
$ patch -pnum

Erstellen einer Patch-Datei mit „diff“:

Quellcodedatei 1:

Erstens sind zwei verschiedene Versionen eines Quellcodes erforderlich, um eine Patch-Datei zu erstellen. Die von mir erstellte Quellcodedatei heißt „meine Datei.c”:s

#einschließen
int main()
printf("Hallo LinuxHint\n");

Quellcodedatei 2:

Kopieren Sie nun den Inhalt von meine Datei.c in dem new_myfile.c, Verwendung:

$ cp myfile.c new_myfile.c

Nehmen Sie einige Änderungen in der neu erstellten Datei vor:

#einschließen
Leere Haupt()
printf("Hallo Linux-Hinweis");
printf("Willkommen bei Linuxhint");

Differenz prüfen:

Erstellen wir eine Patch-Datei mit dem Namen als create meine Datei.Patch:

$ diff -u meine Datei.c new_myfile.c

Sie können die Patch-Datei drucken, indem Sie den folgenden Befehl ausführen:

$ cat myfile.Patch

Anwenden der Patch-Datei:

Verwenden Sie zum Anwenden des Patches:

$ Patch < myfile.patch

Stellen Sie sicher, dass sich die Patch-Datei in dem Verzeichnis befindet, in dem sich die Quellcodedatei befindet.

Erstellen Sie eine Sicherungskopie, bevor Sie den Patch anwenden:

Benutzen "-b” Option zum Erstellen eines Backups der Patch-Datei:

$ patch -b < myfile.patch

Einstellen der Backup-Dateiversion

Wenn Sie mehrere Backups einer einzelnen Backup-Datei benötigen, verwenden Sie die „-V" Möglichkeit. Es legt die Versionsnummer jeder Sicherungsdatei fest. Führen Sie den unten angegebenen Befehl aus:

$ Patch -b -V nummeriert < myfile.patch

Patch-Dateien validieren

Wenn Sie das Ergebnis des Patchens überprüfen oder beobachten möchten, verwenden Sie „-Probelauf" Möglichkeit. Es nimmt keine Änderung an der Originaldatei vor:

$ patch --dry-run < myfile.patch

Einen Patch rückgängig machen/rückgängig machen

Die Option „-R“ wird verwendet, um einen bereits angewendeten Patch rückgängig zu machen oder rückgängig zu machen.

$ Patch < file.patch
$ ls -l meine Datei.c
$ Patch -R < myfile.patch
$ ls -l meine Datei.c

Fazit:

Im Linux-Betriebssystem ist „patch“ ein Befehl, mit dem wir Patch-Dateien auf die Quellcodes oder Konfigurationsdateien anwenden können. Die Patchdatei wird für Softwareaktualisierungszwecke verwendet. Der Unterschied zwischen den Original- und neuen Dateien wird in Patch-Dateien gespeichert und der Befehl "diff" wird verwendet, um den Unterschied oder das Patch zu erhalten. Wir haben die Verwendung der Befehle „diff“ und „patch“ mit einer Reihe von Optionen besprochen, z. B. Backups erstellen, Trockenlauf durchführen und den angewendeten Patch rückgängig machen.

So überprüfen Sie Ihre Linux-Version
Es ist wichtig, die Versionsnummer des Betriebssystems zu kennen, das Sie auf Ihrem Computer ausführen. Möglicherweise benötigen Sie diese Information...
Über den Befehl lspci unter Linux
lspci Befehl ist ein Dienstprogramm auf Linux-Systemen, das verwendet wird, um Informationen über die PCI-Busse und -Geräte herauszufinden, die mit de...
diff-Befehlsbeispiele unter Linux
Der diff-Befehl ist ein Analyse- oder Informationsbefehl, der Unterschiede zwischen Dateien ausgibt, sie Zeile für Zeile oder Verzeichnisse rekursiv a...