青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

在一般中尋求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

轉(zhuǎn)載--diff命令的使用

Posted on 2008-11-14 16:12 Prayer 閱讀(575) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Shell

功能說(shuō)明:比較文件的差異。

語(yǔ)  法:diff [-abBcdefHilnNpPqrstTuvwy][-<行數(shù)>][-C <行數(shù)>][-D <巨集名稱>][-I <字符或字符串>][-S <文件>][-W <寬度>][-x <文件或目錄>][-X <文件>][--help][--left-column][--suppress-common-line][文件或目錄1][文件或目錄2]

補(bǔ)充說(shuō)明:diff以逐行的方式,比較文本文件的異同處。所是指定要比較目錄,則diff會(huì)比較目錄中相同文件名的文件,但不會(huì)比較其中子目錄。

參  數(shù):
 -<行數(shù)>  指定要顯示多少行的文本。此參數(shù)必須與-c或-u參數(shù)一并使用。
 -a或--text  diff預(yù)設(shè)只會(huì)逐行比較文本文件。
 -b或--ignore-space-change  不檢查空格字符的不同。
 -B或--ignore-blank-lines  不檢查空白行。
 -c  顯示全部?jī)?nèi)文,并標(biāo)出不同之處。
 -C<行數(shù)>或--context<行數(shù)>  與執(zhí)行"-c-<行數(shù)>"指令相同。
 -d或--minimal  使用不同的演算法,以較小的單位來(lái)做比較。
 -D<巨集名稱>或ifdef<巨集名稱>  此參數(shù)的輸出格式可用于前置處理器巨集。
 -e或--ed  此參數(shù)的輸出格式可用于ed的script文件。
 -f或-forward-ed  輸出的格式類似ed的script文件,但按照原來(lái)文件的順序來(lái)顯示不同處。
 -H或--speed-large-files  比較大文件時(shí),可加快速度。
 -l<字符或字符串>或--ignore-matching-lines<字符或字符串>  若兩個(gè)文件在某幾行有所不同,而這幾行同時(shí)都包含了選項(xiàng)中指定的字符或字符串,則不顯示這兩個(gè)文件的差異。
 -i或--ignore-case  不檢查大小寫的不同。
 -l或--paginate  將結(jié)果交由pr程序來(lái)分頁(yè)。
 -n或--rcs  將比較結(jié)果以RCS的格式來(lái)顯示。
 -N或--new-file  在比較目錄時(shí),若文件A僅出現(xiàn)在某個(gè)目錄中,預(yù)設(shè)會(huì)顯示:
Only in目錄:文件A若使用-N參數(shù),則diff會(huì)將文件A與一個(gè)空白的文件比較。
 -p  若比較的文件為C語(yǔ)言的程序碼文件時(shí),顯示差異所在的函數(shù)名稱。
 -P或--unidirectional-new-file  與-N類似,但只有當(dāng)?shù)诙€(gè)目錄包含了一個(gè)第一個(gè)目錄所沒有的文件時(shí),才會(huì)將這個(gè)文件與空白的文件做比較。
 -q或--brief  僅顯示有無(wú)差異,不顯示詳細(xì)的信息。
 -r或--recursive  比較子目錄中的文件。
 -s或--report-identical-files  若沒有發(fā)現(xiàn)任何差異,仍然顯示信息。
 -S<文件>或--starting-file<文件>  在比較目錄時(shí),從指定的文件開始比較。
 -t或--expand-tabs  在輸出時(shí),將tab字符展開。
 -T或--initial-tab  在每行前面加上tab字符以便對(duì)齊。
 -u,-U<列數(shù)>或--unified=<列數(shù)>  以合并的方式來(lái)顯示文件內(nèi)容的不同。
 -v或--version  顯示版本信息。
 -w或--ignore-all-space  忽略全部的空格字符。
 -W<寬度>或--width<寬度>  在使用-y參數(shù)時(shí),指定欄寬。
 -x<文件名或目錄>或--exclude<文件名或目錄>  不比較選項(xiàng)中所指定的文件或目錄。
 -X<文件>或--exclude-from<文件>  您可以將文件或目錄類型存成文本文件,然后在=<文件>中指定此文本文件。
 -y或--side-by-side  以并列的方式顯示文件的異同之處。
 --help  顯示幫助。
 --left-column  在使用-y參數(shù)時(shí),若兩個(gè)文件某一行內(nèi)容相同,則僅在左側(cè)的欄位顯示該行內(nèi)容。
 --suppress-common-lines  在使用-y參數(shù)時(shí),僅顯示不同之處。

===========================================================================

摘要:本文詳細(xì)介紹了diff命令的基本用法

作者:zieckey (zieckey@yahoo.com.cn)
   All Rights Reserved!

有這樣兩個(gè)文件:

程序清單1 :hello.c

#include <stdio.h>

int main(void)
{
   char msg[] = "Hello world!";
  
    puts(msg);
    printf("Welcome to use diff commond.\n");
   
    return 0;   
}


程序清單2:hello_diff.c

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char msg[] = "Hello world,fome hello_diff.c";
   
    puts(msg);
    printf("hello_diff.c says,'Here you are,using diff.'\n");
   
    return 0;   
}

我們使用diff命令來(lái)查看這兩個(gè)文件的不同之處,有一下幾種方便的方法:
1、普通格式輸出:
[root@localhost diff]# diff hello.c hello_diff.c
1a2
> #include <stdlib.h>
5c6
<       char msg[] = "Hello world!";
---
>       char msg[] = "Hello world,fome hello_diff.c";
8c9
<       printf("Welcome to use diff commond.\n");
---
>       printf("hello_diff.c says,'Here you are,using diff.'\n");
[root@localhost diff]#

上面的“1a2”表示后面的一個(gè)文件"hello_diff.c"比前面的一個(gè)文件"hello.c"多了一行
"5c6"表示第一個(gè)文件的第5行與第二個(gè)文件的第6行有區(qū)別

2、并排格式輸出
[root@localhost diff]# diff hello.c hello_diff.c -y -W 130
#include <stdio.h>                                              #include <stdio.h>
                                                              > #include <stdlib.h>

int main(void)                                                  int main(void)
{                                                               {
        char msg[] = "Hello world!";                          |         char msg[] = "Hello world,fome hello_diff.c";

        puts(msg);                                                      puts(msg);
        printf("Welcome to use diff commond.\n");             |         printf("hello_diff.c says,'Here you are,using diff.'\

        return 0;                                                       return 0;
}                                                               }
[root@localhost diff]#
這種并排格式的對(duì)比一目了然,可以快速找到不同的地方。
-W選擇可以指定輸出列的寬度,這里指定輸出列寬為130

3、上下文輸出格式
[root@localhost diff]# diff hello.c hello_diff.c -c
*** hello.c     2007-09-25 17:54:51.000000000 +0800
--- hello_diff.c        2007-09-25 17:56:00.000000000 +0800
***************
*** 1,11 ****
#include <stdio.h>

int main(void)
{
!       char msg[] = "Hello world!";

        puts(msg);
!       printf("Welcome to use diff commond.\n");

        return 0;
}
--- 1,12 ----
#include <stdio.h>
+ #include <stdlib.h>

int main(void)
{
!       char msg[] = "Hello world,fome hello_diff.c";

        puts(msg);
!       printf("hello_diff.c says,'Here you are,using diff.'\n");

        return 0;
}
[root@localhost diff]#
這種方式在開頭兩行作了比較文件的說(shuō)明,這里有三中特殊字符:
+        比較的文件的后者比前著多一行
-        比較的文件的后者比前著少一行       
!        比較的文件兩者有差別的行

4、統(tǒng)一輸出格式
[root@localhost diff]# diff hello.c hello_diff.c -u
--- hello.c     2007-09-25 17:54:51.000000000 +0800
+++ hello_diff.c        2007-09-25 17:56:00.000000000 +0800
@@ -1,11 +1,12 @@
#include <stdio.h>
+#include <stdlib.h>

int main(void)
{
-       char msg[] = "Hello world!";
+       char msg[] = "Hello world,fome hello_diff.c";

        puts(msg);
-       printf("Welcome to use diff commond.\n");
+       printf("hello_diff.c says,'Here you are,using diff.'\n");

        return 0;
}
[root@localhost diff]#
正如看到的那樣,統(tǒng)一格式的輸出更加緊湊,所以更易于理解,更易于修改。

5、其他
假如你想查看兩個(gè)文件是否不同又不想顯示差異之處的話,可以加上-q選項(xiàng):
[root@localhost diff]# diff hello.c hello_diff.c -q
Files hello.c and hello_diff.c differ
[root@localhost diff]# 另外你還可以提供一些匹配規(guī)則來(lái)忽略某中差別,可以用 -I regexp

[root@localhost diff]# diff hello.c hello_diff.c -c -I include
*** hello.c     2007-09-25 17:54:51.000000000 +0800
--- hello_diff.c        2007-09-25 17:56:00.000000000 +0800
***************
*** 2,11 ****

int main(void)
{
!       char msg[] = "Hello world!";

        puts(msg);
!       printf("Welcome to use diff commond.\n");

        return 0;
}
--- 3,12 ----

int main(void)
{
!       char msg[] = "Hello world,fome hello_diff.c";

        puts(msg);
!       printf("hello_diff.c says,'Here you are,using diff.'\n");

        return 0;
}
[root@localhost diff]#

這里通過(guò)“ -I include”選項(xiàng)來(lái)忽略帶有“ include”字樣的行
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            好男人免费精品视频| 国产精品男女猛烈高潮激情| 夜夜夜久久久| 红桃视频国产精品| 黄色av一区| 亚洲人成啪啪网站| 一本色道久久综合亚洲91| 日韩视频免费观看高清完整版| 亚洲国产美女久久久久| 99精品福利视频| 亚洲欧美欧美一区二区三区| 久久高清国产| 美玉足脚交一区二区三区图片| 女同性一区二区三区人了人一| 亚洲国产精品成人综合| 亚洲午夜激情网页| 久久综合色影院| 国产精品久久久久久久久久ktv | 亚洲一级免费视频| 亚洲欧美第一页| 久久久久久**毛片大全| 中文在线不卡视频| 久久国产一区| 亚洲国产精品传媒在线观看| 亚洲欧美国产精品va在线观看| 理论片一区二区在线| 欧美色欧美亚洲高清在线视频| 国产自产在线视频一区| 一二美女精品欧洲| 噜噜噜91成人网| 亚洲午夜一级| 一本色道88久久加勒比精品 | 亚洲私人影院| 欧美在线观看www| 亚洲国产女人aaa毛片在线| 亚洲一区二区三区在线| 一区二区三区日韩在线观看| 麻豆国产精品777777在线| 国产精品激情| 一区二区高清| 亚洲一区二区免费在线| 久久成人18免费观看| 久久精品国产欧美激情| 一区二区三区精品在线| 一区二区三区免费网站| 中文av一区二区| 午夜精品剧场| 免费在线观看日韩欧美| 欧美巨乳在线观看| 国产精品成人国产乱一区| 国产一区二区三区的电影 | 亚洲综合视频一区| 欧美一区二区三区视频| 久久久91精品| 牛牛影视久久网| 欧美h视频在线| 欧美大片在线观看| 国产精品mm| 亚洲一区二区在线免费观看视频| 亚洲啪啪91| 欧美体内she精视频在线观看| 另类图片国产| 久久综合婷婷| 国内精品亚洲| 亚洲高清资源| 亚洲淫性视频| 久久久久久久欧美精品| 午夜视频一区在线观看| 国产农村妇女毛片精品久久麻豆| 久久精品国内一区二区三区| 久久精品中文字幕一区二区三区| 欧美日韩国产a| 国产精品永久免费观看| 好看的日韩视频| 在线不卡欧美| 亚洲影视综合| 亚洲区一区二| 欧美成人中文| 欧美极品欧美精品欧美视频| 国产精品乱码一区二三区小蝌蚪| 欧美一级久久| 久久视频一区二区| 欧美日韩国产免费观看| 黄色日韩在线| 亚洲免费在线观看视频| 麻豆成人91精品二区三区| 一本色道久久综合狠狠躁的推荐| 亚洲综合99| 黄色日韩网站视频| 亚洲免费av网站| 国产日韩一区| 亚洲国产成人久久综合| 欧美一区91| 国产精品成人观看视频国产奇米| 国产女精品视频网站免费| 亚洲第一黄色网| 一区二区视频免费在线观看| 日韩午夜激情| 欧美mv日韩mv国产网站app| 国产色产综合色产在线视频| 欧美国产亚洲精品久久久8v| 午夜精品视频在线观看| 国产精品国产精品国产专区不蜜| 久久久久久网| 欧美日韩精品一区二区| 久久久精品国产免费观看同学| 欧美成人a视频| 欧美中文字幕在线| 欧美成人有码| 久久久青草青青国产亚洲免观| 欧美国产日韩免费| 久久躁狠狠躁夜夜爽| 欧美国产先锋| 午夜视频久久久久久| 蜜桃久久av一区| 久久久噜噜噜久久中文字免| 欧美日韩三区四区| 亚洲在线免费| 欧美激情一区二区三区| 欧美日韩国产精品一区| 999在线观看精品免费不卡网站| 久久久精品午夜少妇| 亚洲欧美日本伦理| 国产女主播一区二区| 夜夜嗨一区二区三区| 欧美极品aⅴ影院| 久久女同互慰一区二区三区| 欧美日韩1区2区| 亚洲精品在线免费| 亚洲第一偷拍| 亚洲国产一二三| 亚洲综合色丁香婷婷六月图片| 国产亚洲精品久久久久久| 久久一区激情| 亚洲一区二区免费| 欧美大胆人体视频| 国产三级欧美三级日产三级99| 黄色成人av| 欧美高清一区二区| 亚洲一区二区三| 欧美另类高清视频在线| 亚洲欧洲一区二区在线播放| 亚洲美女啪啪| 亚洲免费电影在线| 国产伦精品一区二区三区免费 | 亚洲乱亚洲高清| 狂野欧美激情性xxxx欧美| 亚洲欧洲日夜超级视频| 黄色亚洲在线| 激情亚洲成人| 亚洲人永久免费| 亚洲人体大胆视频| 国产在线精品成人一区二区三区| 美国十次了思思久久精品导航| 国产一区二区三区av电影| 久久成人综合视频| 久久久久国内| 精品88久久久久88久久久| 久久国产一区二区| 你懂的亚洲视频| 亚洲精品网址在线观看| 久久成人精品无人区| 欧美日韩在线播| 日韩视频在线观看一区二区| 亚洲国产精品123| 欧美一区二区在线视频| 亚洲一区欧美一区| 亚洲人成高清| 欧美日韩亚洲不卡| 亚洲一本视频| 国产精品99久久久久久人| 亚洲人精品午夜在线观看| 欧美激情久久久久| 欧美国产第二页| 麻豆精品精华液| 欧美成人精品在线| 欧美成人在线免费视频| 免费在线成人av| 欧美sm视频| 欧美激情第三页| 蜜桃精品久久久久久久免费影院| 久久九九热免费视频| 久久久久se| 麻豆91精品91久久久的内涵| 美女尤物久久精品| 麻豆视频一区二区| 亚洲国产福利在线| 亚洲第一区色| 91久久精品久久国产性色也91| 亚洲电影免费在线观看| 91久久久亚洲精品| 亚洲精品日日夜夜| 夜夜嗨av一区二区三区中文字幕 | 亚洲大胆女人| 欧美黄网免费在线观看| 欧美福利一区| 亚洲精品国产精品国自产观看浪潮| 亚洲欧美经典视频| 久久精品人人做人人爽| 久久视频在线看|