at_shiita.ishigaki
2022年2月4日 9時25分
patchコマンドを使用してパッチを適用する例を以下に示します。
※ここでは例としてhoge.txtとhoge_new.txtを作成し、パッチをhoge.patchに保存します。
[armadillo ~]# cat > hoge.txt << '__EOF__' hoge fuga __EOF__ [armadillo ~]# cat > hoge_new.txt << '__EOF__' hoge fuga piyo __EOF__ [armadillo ~]# diff hoge.txt hoge_new.txt > hoge.patch [armadillo ~]# patch hoge.txt < hoge.patch patching file hoge.txt [armadillo ~]# cat hoge.txt hoge fuga piyo
パッチを適用前に戻すには-Rオプションを使用します。
[armadillo ~]# patch -R hoge.txt < hoge.patch patching file hoge.txt [armadillo ~]# cat hoge.txt hoge fuga
パッチを適用するときにバックアップを取るには-bオプションを使用します。
バックアップファイルの名前は-B,-Y,-zオプションや環境変数 SIMPLE_BACKUP_SUFFIXで指定することができます。指定がない場合は(ファイル名).origとなります。
※ここでは例として環境変数 SIMPLE_BACKUP_SUFFIXを指定した場合と-Bオプションを使用した場合について記載します。
[armadillo ~]# patch -b hoge.txt < hoge.patch patching file hoge.txt [armadillo ~]# ls hoge.txt.orig hoge.txt.orig [armadillo ~]# export SIMPLE_BACKUP_SUFFIX=.bak [armadillo ~]# patch -b hoge.txt < hoge.patch patching file hoge.txt [armadillo ~]# ls hoge.txt.bak hoge.txt.bak [armadillo ~]# patch -b -B backup hoge.txt < hoge.patch patching file hoge.txt [armadillo ~]# ls backup/hoge.txt backup/hoge.txt