【Linux】patchコマンドの使い方と実行例

Linuxのpatchコマンドの使い方と実行例についてまとめました。

パッチの適用(patchコマンド)

パッチ(patch)は、ソフトウェアの更新作業に用いられる差分データのことです。
元ファイル(更新前のファイル)と差分ファイル(パッチファイル)から、新しいファイルを作成します。
diffコマンドで作成した差分ファイルを作成し、patchコマンドで差分を適用します(パッチを当てる)。

patch [オプション] 元ファイル 差分ファイル

以下でも可能。

patch [オプション] 元ファイル < 差分ファイル

オプションを省略してコマンドを実行するとパッチファイルの形式を自動判別します。

オプション 概要
-c パッチファイルの形式をcontext形式として扱う
-e パッチファイルの形式をedスクリプト形式として扱う
-n パッチファイルの形式をRCS形式として扱う
-u パッチファイルの形式をunified形式として扱う

※オプションなしの場合は、パッチファイルの形式を自動判別

【実行例】差分ファイル(パッチファイル)の作成

$ diff -u old_file new_file > diff.patch

【実行例】パッチの適用

$ patch -u old_file < diff.patch

パッチを適用する先(元ファイル=old_file)を省略した場合、パッチファイルの先頭の行(--- ファイル名)に記載されたファイルにパッチが適用されます。

【実行例】パッチの適用を取りやめ(リバースパッチ)

間違ってパッチを適用してしまった場合など、パッチの適用を取りやめたい場合、patchコマンドにオプション「-R」を指定します。

$ patch -u -R old_file < diff.patch

関連ページ

LinuCの試験対策と例題まとめ
LinuCの試験対策と例題(学習サイト)についてまとめました。
LPICの試験対策と例題まとめ
LPICの試験対策と例題(学習サイト)についてまとめました。
【Linux超入門】システムの基礎とよく使うコマンドなど徹底解説
Linuxシステムの基礎とよく使うコマンドなどについて入門者向けに解説します。

コメント