linuxdiff文件夾
A. linux中diff產生的信息怎麼看
以上說明指定了兩個文件中不同處的行號及其相應的操作。在輸出形式中,每一行後面將跟隨受到影響的若干行。其中,以<開始的行屬於文件1,以>開始的行屬於文件2。
B. Linux里 .diff 是什麼文件在gnu下了個gcc源碼包,看到有個.diff文件,這是什麼文件
就是 difference 的意思。
這個東西是 diff 命令生成的「區別」數據,也就是兩個源代碼目錄他會識別出有什麼不同點並且輸出為 diff 文件特有的格式。這個輸出的文件可以用 patch 命令打在舊版本的源代碼上來實現變成新版本的源代碼。
這種升級源代碼版本的辦法,可以很好的解決每次下載源代碼都要重頭全部下載導致數據量很大的問題。
如果你下載源代碼包只有 .diff ,那麼證明你下載錯了,因為只有舊的特定版本才能用 diff 升級為特定的新版本。diff 文件是前後兩個版本關聯的,不是隨便可以用的。
C. linux下怎樣比較兩個目錄下所有文件是否有區別
1、給每個目錄所有文件生成hash值文件,然後再比較hash值文件區別。 2、創建文件 find ./dir1 -type f |xargs openssl md5 > a.txt find ./dir2 -type f |xargs openssl md5 > b.txt 3、比較 diff a.txt b.txt
D. Linux使用diff命令怎麼比較文件
1>Diff命令的功能
Linux中Diff命令的功能為逐行比較兩個文本文件,列出其不同之處。它對給出的文件進行系統的檢查,並顯示出兩個文件中所有不同的行,不要求事先對文件進行排序。
2>語法
diff
[options]
file1
file2
該命令告訴用戶,為了使兩個文件file1和file2一致,需要修改它們的哪些行。如果用」-」表示file1或file2,則表示標准輸入。如果file1或file2是目錄,那麼diff將使用該目錄中的同名文件進行比較。
3>[options]主要參數
-a:將所有文件當作文本文件來處理。
-b或–ignore-space-change
忽略空格造成的不同。
-B或–ignore-blank-lines
忽略空行造成的不同。
-c:使用綱要輸出格式。
-H:利用試探法加速對大文件的搜索。
-I:忽略大小寫的變化。
-n
–rcs:輸出RCS格式。
-N或–new-file
在比較目錄時,若文件A僅出現在某個目錄中,會顯示:Only
in目錄;文件A若使用-N參數,則diff會將文件A與一個空白的文件比較。
-r或–recursive
比較子目錄中的文件。
-u,-U<列數>或–unified=<列數>
以合並的方式來顯示文件內容的不同。
4>使用方法的實例說明
例如:
diff
/usr/xu
mine
把目錄/usr/xu
中名為mine的文件與當前目錄中的mine文件進行比較。
通常輸出由下述形式的行組成:
n1
a
n3,n4
n1,n2
d
n3
n1,n2
c
n3,n4
這些行類似ed命令把filel轉換成file2。字母(a、d和c)之前的行號(n1,n2)是針對file1的,其後面的行號(n3,n4)是針對file2的。字母a、d和c分別表示附加、刪除和修改操作。
在上述形式的每一行的後面跟隨受到影響的若干行,以」<」打頭的行屬於第一個文件,以」>」打頭的行屬於第二個文件。
diff能區別塊和字元設備文件以及FIFO(管道文件),不會把它們與普通文件進行比較。
如果file1和file2都是目錄,則diff會產生很多信息。
5>diff最常用的功能
diff有很多功能平時我們不常用到,最常用的功能莫過於生成patch文件了:
diff
-urN
old/
new/
>
mysoft.patch
參數
-u
表示使用
unified
格式,-r
表示比較目錄,-N
表示將不存在的文件當作空文件處理,這樣新添加的文件也會出現在patch文件中。
然後在需要應用patch的地方使用下述命令即可:
patch
-p0
<
mysoft.patch
diff的
-y
命令(長格式為
–side-by-side)可以將屏幕分成左右兩部分,來比較兩個文件之間的差異。許多圖形化的比較工具都有這個功能,但如果只能使用命令行,這個參數就相當有用了。如果要改變左右各部分的寬度,可以通過
-W
(–width)參數來指定。
–ignore-blank-lines
參數可以不檢查空白行。這樣DOS格式和Unix格式的文件互相比較時,就不至於因為換行符不一致而出現大量的差異。
E. linux diff文件,可以大補丁嗎
--------------------
簡單的說,diff的功能就是用來比較兩個文件的不同,然後記錄下來,也就是所謂的diff補丁。語法格式:diff 【選項】 源文件(夾) 目的文件(夾),就是要給源文件(夾)打個補丁,使之變成目的文件(夾),術語也就是「升級」。下面介紹三個最為常用選項:
-r 是一個遞歸選項,設置了這個選項,diff會將兩個不同版本源代碼目錄中的所有對應文件全部都進行一次比較,包括子目錄文件。
-N 選項確保補丁文件將正確地處理已經創建或刪除文件的情況。
-u 選項以統一格式創建補丁文件,這種格式比預設格式更緊湊些。
2、patch
F. linux diff命令
如果兩個
二進制文件
相同,diff就什麼也不顯示,否則只簡單報告一下這兩個文件是不相同的。
diff命令的功能為逐行比較兩個文本文件,列出其不同之處。由於二進制文件沒有行結構,diff程序將不顯示所有的編輯行信息。
G. Linux diff命令查找2個目錄(遞歸情況下)不同文件名所在的行
如果是多個文件的比較,我建議使用專用比較軟體beyond compare,此軟體在linux下的安裝使用都非常方便
H. 怎麼快速對比兩個Linux文件夾
一】可以通過ls -l|wc -l對比文件數量是否一樣
二】可以通過ls -l >filename.txt然後再diff filename1.txt filename2.txt,將文件名列出來並重定向到一個文件,然後通過diff命令對比這兩個文件即可找到有哪些文件不一致。
三】升級版,通過md5sum命令生成md5碼,然後用for循環進行遍歷對比
I. linux下有沒有什麼比較好的diff工具
這個我有個大概的思路:
比如說/tmp 目錄
1 先利用cd ,ls 列出所有該目錄下的所有文件(包括目錄)
將名字放入一個數組內。
2 循環遍歷數組
每個循環內判斷該對象是文件還是目錄 (file命令)
2.1 if 是目錄
繼續重復第一步放入一個數據內
繼續處理
2.2 if是文件
找到另一個文件夾內相同的文件 比較(diff命令) 輸出不同的內容
end
裡面就是遞歸循環復雜了點,思路理清了,就比較簡單了,剩下就慢慢寫 一步步調試了。