Linux patch-Befehl
LinuxBefehls大全
Der Linux patch-Befehl wird zum Reparieren von Dateien verwendet.
Der patch-Befehl ermöglicht es dem Benutzer, die Originaldatei durch das Setzen von Reparaturdateien zu ändern und zu aktualisieren. Wenn nur eine Datei gleichzeitig geändert wird, kann der Befehl direkt in der Befehlszeile abgegeben und in der angegebenen Reihenfolge ausgeführt werden. Wenn der Weg der Reparaturdatei配合使用, können viele Dateien gleichzeitig repariert werden, dies ist auch eine Methode zur Aktualisierung des Linux-Kerns.
Syntax
patch [-bceEflnNRstTuvZ][-B <Backup-Zeichenkette>][-d <Arbeitsverzeichnis>][-D <Kennzeichnungssymbol>][-F <Spaltenanzahl>][-g <Steuerungsnummer>][-i <Reparaturdatei>][-o <Ausdatei>][-p <Entfernungsebenen>][-r <Abgelehnte Datei>][-V <Backup-Modus>][-Y <Backup-Zeichenkette>][-z <Backup-Zeichenkette>][--utc Setzt die Änderungszeit der reparierten Datei auf UTC.-nobackup -mismatch][--binary][--help][--help Online-Hilfe.-nobackup-mismatch][--verbose][Originaldatei <Reparaturdatei>] oder Pfad [-p <Entfernungsebenen>] < [Reparaturdatei]
Parameter:
- -boder--backup Kopiert jeden Originaldatei.
- -B<Backup-Zeichenkette>oder--prefix=<Backup-Zeichenkette> Setzt die Zeichenkette, die vor dem Dateinamen angehängt wird, wenn die Datei gesichert wird, diese Zeichenkette kann der Pfadname sein.
- -coder--context Interpretiert die Reparaturdaten als relevante Unterschiede.
- -d<Arbeitsverzeichnis>oder--directory=<Arbeitsverzeichnis> Setzt das Arbeitsverzeichnis.
- -D<Kennzeichnungssymbol>oder--ifdef=<Kennzeichnungssymbol> Markiert die geänderten Stellen mit dem angegebenen Symbol.
- -eoder--ed Interpretiert die Reparaturdaten als Beschreibungsdatei, die von der ed-Anweisung verwendet werden kann.
- -Eoder--remove-empty-files Wenn der Inhalt der ausgegebenen Datei nach der Reparatur leer ist, wird die Datei entfernt.
- -foder--force Der Effekt dieses Parameters ist ähnlich wie der spezifizierte"-t"Parameter ähnlich, aber es wird angenommen, dass die Version der Reparaturdaten die neue Version ist.
- -F<Spaltenanzahl>oder--fuzz<Spaltenanzahl> Setzt den maximalen Wert der Unterschiedskolonne.
- -g<Steuerungsnummer>oder--get=<Steuerungsnummer> Setzt die Reparaturoperation mit RSC oder SCCS.
- -i<Reparaturdatei>oder--input=<Reparaturdatei> Liest die angegebene Reparaturdatei.
- -loder--ignore-whitespace Ignoriert die Weitespaceizen und Leerzeichen im Reparaturdaten und im Eingabedaten.
- -noder--normal Interpretiert die Reparaturdaten als allgemeine Unterschiede.
- -Noder--forward Ignoriert, wenn die reparierte Daten in der Version älter als die Originaldatei sind oder die Reparaturdaten dieser Version bereits verwendet wurden.
- -o<Ausdateiname>oder--output=<Ausdateiname> Legt den Namen der Ausdatei fest, der reparierte Datei wird unter diesem Namen gespeichert.
- -p<Entfernungsebenen>oder--strip=<Entfernungsebenen> Legt den Namen des Pfades fest, von dem mehrere Ebenen entfernt werden sollen.
- -f<拒绝文件>或--f<Abgelehnte Datei> oder-reject
- -file=<Abgelehnte Datei> Setzt den Dateinamen der Datei, in der abgelehnte Reparaturinformationen gespeichert werden, Standardname ist .rej.--R oder
- -reverse Annahme, dass die Reparaturdaten durch den Austausch von Dateipositionen erzeugt wurden.--s oder--quiet oder
- -silent Zeigt den Ablauf des Befehls nicht an, es sei denn, es tritt ein Fehler auf.--t oder
- -batch Ignoriert automatisch Fehler und stellt keine Fragen.--Z oder-T oder-time Dieser Parameter hat die gleiche Wirkung wie das Specifizieren"
- -Z"Parameter ähnlich, aber hauptsächlich auf lokale Zeit gestützt.--u oder
- -unified Dekodiert die Reparaturdaten in konsistente Unterschiede.--v oder
- -version Zeigt Versionsinformationen an.--V<Sicherungsart> oder-version-control=<Sicherungsart> Verwenden Sie"-b"Parameter die Zieldatei sichert, wird der Sicherungsstring am Ende der Sicherungsdatei hinzugefügt, dieser String ist nicht nur-z"Parameter geändert, wenn"
- -V"Parameter für verschiedene Sicherungsmethoden erzeugt auch verschiedene Endungssicherungsstrings.--Y<Sicherungsdateianfangsstring> oder-basename--prefix=
- -<Sicherungsdateianfangsstring> Setzt den Anfangsstring, der beim Sichern der Datei an den Dateinamen angehängt wird.--z<Sicherungsdateiendung> oder-suffix=<Sicherungsdateiendung> Dieser Parameter hat die gleiche Wirkung wie das Specifizieren"/src/linux/B"Parameter ähnlich, aber der Unterschied liegt in dem Pfad und dem Dateinamen, den das Patching verwendet, wenn es auf "src/super.c, mit "backup/"Zeichenfolge, dann wird die Datei super.c im Verzeichnis/src/linux/fs
- -backup-Verzeichnis.--Z oder-set
- --utc Setzt die Änderungszeit der reparierten Datei auf UTC.-nobackup-backup
- --mismatch Bei Unstimmigkeiten in den Reparaturdaten und wenn keine spezifische Sicherungsdatei angegeben wurde, sichern Sie die Datei.
- --binary Daten im Binärbetrieb lesen und schreiben, ohne über das Standardausgabegerät.
- --help Online-Hilfe.-nobackup-if
- --mismatch Bei Unstimmigkeiten in den Reparaturdaten und wenn keine spezifische Sicherungsdatei angegeben wurde, sichern Sie keine Datei.
verbose Zeigt den Ablauf des Befehls detailliert an.
Online-Beispiel1Verwenden Sie den Befehl "patch" auf die Datei "testfile
$ patch -p0 testfile1 testfile.patch # Verwenden Sie den Patch-Programm, um die Datei zu aktualisieren
Bevor Sie diesen Befehl verwenden, können Sie den Befehl "cat" verwenden, um "testfile1Der Inhalt. Um zwischen dem zu bearbeitenden und dem Originaldatei mit dem Befehl "diff" einen Patchdatei zu generieren, führen Sie die folgenden Schritte aus:
$ cat testfile1 #Betrachten Sie testfile1Inhalte
Hallo, Dies ist die ersteDatei!
$ cat testfile2 #Betrachten Sie testfile2Inhalte
Hallo, DiesistdiezweiteDatei!
$ diff testfile1 testfile2 #Vergleiche zwei Dateien
1c1
<Hallo, DiesistdieersteDatei!
---
Hallo, DiesistdiezweiteDatei!
#Vergleichsergebnis in die Datei tetsfile.patch speichern
$ diff testfile1 testfile2testfile.patch
$ cat testfile.patch #Inhalte des Patch-Pakets anzeigen
1c1
<Hallo, DiesistdieersteDatei!
---
Hallo, DiesistdiezweiteDatei!
#Testfile mit Patch-Paket aktualisieren1Datei
$ patch -p0 testfile1 testfile.patch
Datei testfile reparieren1
$cat testfile1 #Erneuttestfile betrachten1Inhalte
#testfile1Die Datei wurde so geändert, dass sie mit testfile2Gleiche Inhalte
Hallo, Dies ist die zweiteDatei!
Hinweis: Im obigen Befehlscode,"$ diff testfile1 testfile2DerOperator">"schreibt die Daten der linken Seite des Operators in die Datei, auf die der Operator verweist. Hierbei wird der Vergleich der beiden Dateien in die Datei"testfile.patch"geschrieben.
LinuxBefehls大全