国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux系統下Patch的應用與制作方法祥解

2024-08-28 00:05:18
字體:
來源:轉載
供稿:網友
因為在u-boot移植過程中,有幾處通用文件要修改,如果每次都要手動修改就太麻煩了。制作補丁可以解決這個問題。
學習資料的收集比較簡單,方法一類似于這種初級問題網上資料非常豐富,google或者baidu搜索一下,然后選擇有價值的資料,方法二是閱讀man在線文檔。完成收集工作,當然最終要在自己的Linux上作實驗,比較總結,消化吸收為自己的東西。要除去這么一種錯誤思想:一定要學全。要知道,一次學全是不可能的,只能先學習最為常用的,在以后不斷實踐的過程中逐步的豐富,最終達到比較高的水平。把握的原則是:日有所學,學以致用,用以促學。
首先介紹一下diff和patch。在這里不會把man在線文檔上所有的選項都介紹一下,那樣也沒有必要。在99%的時間里,我們只會用到幾個選項。所以必須學會這幾個選項。
1、diff
NAME
diff - find differences between two files
SYNOPSIS
diff [options] from-file to-file
簡單的說,diff的功能就是用來比較兩個文件的不同,然后記錄下來,也就是所謂的diff補丁。語法格式:diff 【選項】 源文件(夾) 目的文件(夾),就是要給源文件(夾)打個補丁,使之變成目的文件(夾),術語也就是“升級”。下面介紹三個最為常用選項:
-r 是一個遞歸選項,設置了這個選項,diff會將兩個不同版本源代碼目錄中的所有對應文件全部都進行一次比較,包括子目錄文件。
-N 選項確保補丁文件將正確地處理已經創建或刪除文件的情況。
-u 選項以統一格式創建補丁文件,這種格式比缺省格式更緊湊些。
2、patch
NAME
patch - apply a diff file to an original
SYNOPSIS
patch [options] [originalfile [patchfile]]
but usually just
patch -pnum
簡單的說,patch就是利用diff制作的補丁來實現源文件(夾)和目的文件(夾)的轉換。這樣說就意味著你可以有源文件(夾)――>目的文件(夾),也可以目的文件(夾)――>源文件(夾)。下面介紹幾個最常用選項:
-p0 選項要從當前目錄查找目的文件(夾)
-p1 選項要忽略掉第一層目錄,從當前目錄開始查找。
在這里以實例說明:
--- old/modules/pcitable Mon Sep 27 11:03:56 1999
+++ new/modules/pcitable Tue Dec 19 20:05:41 2000
如果使用參數-p0,那就表示從當前目錄找一個叫做old的文件夾,在它下面尋找modules下的pcitable文件來執行patch操作。
如果使用參數-p1,那就表示忽略第一層目錄(即不管old),從當前目錄尋找modules的文件夾,在它下面找pcitable。這樣的前提是當前目錄必須為modules所在的目錄。而diff補丁文件則可以在任意位置,只要指明了diff補丁文件的路徑就可以了。當然,可以用相對路徑,也可以用絕對路徑。不過我一般習慣用相對路徑。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西峡县| 青浦区| 赞皇县| 安丘市| 凯里市| 东乡| 浦城县| 阜阳市| 金溪县| 九台市| 珠海市| 灵山县| 邵阳市| 三门县| 陈巴尔虎旗| 宜州市| 德昌县| 泌阳县| 凉山| 湘潭县| 方正县| 蒙城县| 昭苏县| 沅陵县| 临潭县| 津市市| 麻栗坡县| 青浦区| 浦县| 哈密市| 黑龙江省| 广饶县| 巴南区| 类乌齐县| 阳城县| 红桥区| 门头沟区| 凤冈县| 吉安市| 栾城县| 阳新县|