คำถามติดแท็ก diff

diff เป็นยูทิลิตี้เปรียบเทียบไฟล์ที่แสดงความแตกต่างระหว่างสองไฟล์

4
ฉันจะกระจายเอาต์พุตของสองคำสั่งได้อย่างไร
ฉันจินตนาการถึงวิธีที่ง่ายที่สุดในการเปรียบเทียบเนื้อหาของสองไดเรกทอรีที่คล้ายกันนั้นจะเป็นอย่างไร diff `ls old` `ls new` แต่ฉันเห็นว่าทำไมสิ่งนี้ไม่ทำงาน diffกำลังส่งรายชื่อไฟล์จำนวนมากในบรรทัดคำสั่งแทนที่จะเป็นสตรีมสองรายการอย่างที่ฉันหวังไว้ ฉันจะส่งผ่านเอาต์พุตทั้งสองไปยัง diff โดยตรงได้อย่างไร
165 command-line  diff 

19
เครื่องมือเปรียบเทียบไฟล์และไดเรกทอรี
ฉันกำลังมองหาสิ่งที่จะเปรียบเทียบไดเรกทอรีและไฟล์เช่น Beyond Compare สำหรับ Windows ส่วนใหญ่ใช้สำหรับการควบคุมแหล่งข้อมูล แต่ฉันจำเป็นต้องใช้สำหรับการปรับใช้ด้วย


4
“ diff” มีอยู่สำหรับรูปภาพหรือไม่
คุณสามารถเปรียบเทียบไฟล์ข้อความสองไฟล์ได้ง่ายด้วยdiffและดีกว่าด้วย meld: หากคุณใช้ diff สำหรับภาพคุณจะได้รับตัวอย่างเช่นนี้: $ diff zivi-besch.tif zivildienst.tif Binary files zivi-besch.tif and zivildienst.tif differ นี่คือตัวอย่าง: ต้นฉบับจากhttp://commons.wikimedia.org/wiki/File:Tux.svg แก้ไข: ฉันได้เพิ่มพื้นหลังสีขาวให้กับรูปภาพและใช้ตัวกรอง "ความแตกต่าง" ของ GIMP เพื่อรับสิ่งนี้: มันเป็นวิธีง่าย ๆ ที่ diff ต่างกันอย่างไร แต่ฉันสามารถจินตนาการได้ดีกว่า (และซับซ้อนกว่า) คุณรู้หรือไม่ว่าโปรแกรมที่ใช้งานได้กับภาพที่หลอมรวมเพื่อเป็นข้อความ? (หากมีโปรแกรมที่สามารถให้เปอร์เซ็นต์ (0% ภาพเดียวกัน - 100% ภาพเดียวกัน) ฉันก็จะสนใจมัน แต่ฉันกำลังมองหาโปรแกรมที่ให้คำแนะนำแบบภาพที่แตกต่างกัน)

4
วิธีการกระจายหลายไฟล์ข้ามไดเรกทอรี?
ฉันพยายามค้นหาdiffไฟล์ทั้งหมดที่มีชื่อเหมือนกันในไดเรกทอรีสองชุด (พูดว่าใช้งานได้และสำรองข้อมูล) ตัวอย่างเช่นฉันสามารถdiffสองไฟล์ชื่อเดียวกันในทั้งสอง: > diff d1/f.cpp d2/f.cpp หรือฉันสามารถค้นหาความแตกต่างในไดเรกทอรี: > diff d1 d2 แต่ฉันจะค้นหาความแตกต่างระหว่าง*.cppไฟล์เท่านั้นได้อย่างไร > diff d1/*.cpp d2/*.cpp ดูเหมือนจะไม่ทำงาน (ด้วยเหตุผลที่ชัดเจน) [อาจเป็นเรื่องง่ายที่จะแก้ปัญหาด้วยลูป แต่ฉันพยายามหาวิธีที่หรูหรากว่า]
19 10.04  diff 

3
ทางเลือกที่ดีที่สุดสำหรับ WinMerge
ฉันต้องการเปรียบเทียบ / diff / merge files ในวิธีที่ง่าย ในยุคมืดเมื่อฉันเป็นผู้ใช้ windows ฉันจะใช้ WinMerge มีตัวเลือกอื่นสำหรับสิ่งนี้ใน Ubuntu หรือไม่ สิ่งที่ฉันต้องทำ: ดูไฟล์ 2 ไฟล์ต่อบรรทัดพร้อมกันโดยเน้นความแตกต่าง มีตัวเลือกสำหรับการรวมไฟล์นี้เข้าด้วยกัน

4
ฉันจะ“ แตกต่าง” สองไฟล์ด้วย Nautilus ได้อย่างไร
ฉันติดตั้ง Meld แล้วและพบว่าเป็นเครื่องมือเปรียบเทียบที่ยอดเยี่ยม น่าเสียดายที่ไม่มีการรวมกับ Nautilus 3.2 ซึ่งหมายความว่าฉันไม่สามารถคลิกขวาที่ไฟล์และเลือกตัวเลือกเพื่อเปิดใน Meld เพื่อทำการเปรียบเทียบ ฉันเห็นในความคิดเห็นเครื่องมือว่าเครื่องมือจำเป็นต้องติดตั้งแพ็กเกจdiff-ext แพ็คเกจนี้ถูกลบออกจากจักรวาลของ Ubuntu ฉันเดาเพราะ gtk 3.0 แม้ว่าผมจะดาวน์โหลดได้ด้วยตนเองจากแหล่งปลอมdiff-ต่อแพคเกจเมื่อฉันพยายามที่จะกำหนดค่าการตรวจสอบล้มเหลวด้วยข้อความ: checking for DIFF_EXT... configure: error: Package requirements (libnautilus-extension >= 2.14.0 gconf-2.0 >= 2.14.0 gnome-vfs-module-2.0 >= 2.14) were not met: No package 'libnautilus-extension' found No package 'gconf-2.0' found No package 'gnome-vfs-module-2.0' found ตกลงดังนั้นจากผลลัพธ์นี้ฉันรวบรวมว่า gtk 2 …
16 nautilus  gnome  gtk3  diff 

3
meld แสดงผลลัพธ์เป็นตัวอักษรที่อ่านไม่ได้ (ญี่ปุ่น / จีน?)
ฉันใช้ meld เพื่อให้เห็นความแตกต่างระหว่างสองไฟล์ meld แสดงเอาท์พุท diff ใน ... บางอย่างเช่นญี่ปุ่นหรือจีน? ความคิดอะไรจะเกิดขึ้น? ปัญหาสถานที่? สิ่งที่แปลกคือเมื่อใช้งานdiffหรือcolordiffในเทอร์มินัลพวกเขาทำงานอย่างสมบูรณ์ ขอบคุณ!
15 diff 

5
ความแตกต่างของไฟล์ขนาดใหญ่สองไฟล์
ฉันมี "test1.csv" และมันมี 200,400,600,800 100,300,500,700 50,25,125,310 และ test2.csv และประกอบด้วย 100,4,2,1,7 200,400,600,800 21,22,23,24,25 50,25,125,310 50,25,700,5 ตอนนี้ diff test2.csv test1.csv > result.csv แตกต่างจาก diff test1.csv test2.csv > result.csv ฉันไม่รู้ว่าคำสั่งใดถูกต้อง แต่ฉันต้องการอย่างอื่นทั้งสองคำสั่งด้านบนจะแสดงผลลัพธ์ออกมาเหมือนกัน 2 > 100,4,2,1,7 3 2,3c3,5 4 < 100,300,500,700 5 < 50,25,125,310 6 \ No newline at end of file 7 --- 8 …
14 grep  sed  awk  diff 

3
ความแตกต่างระหว่างสองพี่น้อง?
ฉันมีสองโฟลเดอร์เหมือนกัน แต่ไม่เหมือนกัน (ตัวอย่างเช่นการติดตั้ง Java dir) หนึ่ง dir มีไฟล์พิเศษหนึ่งไฟล์และมีการเปลี่ยนแปลงหนึ่งไฟล์ มีเครื่องมือที่ใช้งานง่ายเพื่อตรวจสอบหรือฉันต้องเขียนสคริปต์ทุบตีที่ซับซ้อนหรือไม่ ป.ล. ฉันกำลังมองหาเครื่องมือบรรทัดคำสั่ง แต่ถ้าคุณรู้จักเครื่องมือ GUI ใด ๆ โปรดแบ่งปันความรู้

2
เรียกใช้คำสั่ง diff เพื่อเปรียบเทียบไฟล์ทั้งหมดในไดเรกทอรี
ฉันมีสองโฟลเดอร์ที่มีทฤษฎีโครงสร้างโฟลเดอร์ที่เหมือนกันและไฟล์เดียวกัน ฉันต้องการตรวจสอบความแตกต่างระหว่างสองสำเนาในสองโฟลเดอร์ ฉันสามารถวิ่งdiff folder1/file1 folder2/file1ทีละคน แต่ใช้เวลานาน มีวิธีการระบุไฟล์ที่แตกต่างกันในสองโฟลเดอร์หรือไม่? ถ้าไม่มีอย่างน้อยวิธีเปรียบเทียบเนื้อหาของโฟลเดอร์กับเนื้อหาของโฟลเดอร์ที่สอง?
10 batch  diff 

3
เปรียบเทียบไฟล์ซอร์สโค้ดโดยไม่สนใจความแตกต่างของการจัดรูปแบบ (เช่นช่องว่าง, การแบ่งบรรทัด, ... )
ฉันกำลังมองหาแอปพลิเคชันที่สามารถเปรียบเทียบสองแหล่ง C ++ และค้นหาความแตกต่างที่มีความหมายรหัส (เพื่อเปรียบเทียบรุ่นที่อาจมีการจัดรูปแบบแตกต่างกัน) อย่างน้อยที่สุดสิ่งที่มีความสามารถในการเพิกเฉยต่อการเปลี่ยนแปลงในพื้นที่สีขาวพื้นที่แท็บและการขึ้นบรรทัดใหม่ซึ่งไม่ส่งผลกระทบต่อการทำงานของแหล่งที่มา (โปรดทราบว่าการขึ้นบรรทัดใหม่นั้นถือเป็นช่องว่างขึ้นอยู่กับภาษาและ C และ C ++ ) และสิ่งที่สามารถระบุความแตกต่างที่มีความหมายรหัสทั้งหมด ฉันอยู่ภายใต้ Ubuntu ตามที่diff --help | grep ignoreฉันคาดหวังว่าdiff -bBwZจะทำงานได้อย่างสมเหตุสมผล (ฉันคาดว่าจะได้รับผลกระทบเชิงลบบางอย่างที่จะได้รับการจัดการในภายหลัง) อย่างไรก็ตามมันไม่ได้ หากฉันมีไฟล์ต่อไปนี้พร้อมตัวอย่าง test_diff1.txt else if (prop == "P1") { return 0; } และ test_diff2.txt else if (prop == "P1") { return 0; } แล้วก็ $ diff -bBwZ test_diff1.txt …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.