1. 程式人生 > >【領卓教育】Linux學習入門(二)------系統命令之 打補丁

【領卓教育】Linux學習入門(二)------系統命令之 打補丁

      打補丁,什麼意思,在玩LOL、王者、吃雞...等遊戲的時候,可能大家都遇到過打打補丁的過程,例如版本的升級就是一次打補丁的過程!

      首先版本的升級和更新,小編最初以為是把遊戲重新安裝或者覆蓋安裝的過程,可是每次的升級更新都只有幾十兆大小,所以肯定不是這種形式。

今天在學習Linux的過程中,恰巧接觸到了打補丁的過程,接下來通過簡單的例子,解釋一下如何進行打補丁!

1.首先建立一個檔案,名為:1.1.0.21,裡面的內容如下:

#include<stdio.h>
int main()
{
    int a,b,max,x;
    printf("please input 3 num:");
    scanf("%d %d %d",&a,&b,&x);
    max = (a>b)?a:b;
    max = (max>x)?max:x;
    printf("max=%d\n",max);
    return 0;
}

2.複製這個檔案為一個新檔案,名為1.1.0.22,裡面的內容比上一個內容多2條語句,

我們將其認為是升級版,其內容如下:

int main()
{
    int a,b,max,x;
    printf("please input 3 num:");
    scanf("%d %d %d",&a,&b,&x);
    max = (a>b)?a:b;
    max = (max>x)?max:x;
    printf("max=%d\n",max);
    printf("max=%d\n",max);
    printf("max=%d\n",max);
    return 0;
}

3.先通過命令比較一下兩個檔案的不同之處

diff  1.1.0.21  1.1.0.22   比較2者的不同之處,9a10,11表示從第9行開始,後面的檔案.22比前面的檔案.11要多出第10行和第11行,而且將多出 的內容列印在了螢幕上1

4.生成補丁檔案: diff -uNr  1.1.0.21  1.1.0.22  >   1.1.0.22.patch  

如上圖,生成1.1.0.22.patch檔案。

補丁檔案如下:

藍色字型的內容,表示.22版本比.21版本多出的內容!

5.執行打補丁命令:patch -p0 < 1.1.0.22.patch

此時此刻就等於是把補丁已經打好了,再通過diff命令檢視兩檔案的不同,發現已經沒有不同之處了,如下:

或者你在進入第一個檔案,就已經發現把少的那兩句已經補上了!

因為安卓系統底層還是linux所以王者榮耀就是通過這種打補丁的形式進行軟體的升級更新!

總結:Linux 學習之路在於不斷的去嘗試,遇到不會的就要去查資料,個人覺得也沒有必要非要去記住那些命令,只要嘗試過這些命令,在大腦裡建立一個簡單的索引,以後的需要的時候,可以隨時查資料使用!