เปรียบเทียบสองโฟลเดอร์ที่มีไฟล์มากมายภายในเนื้อหา


103

มีสองโฟลเดอร์โดยประมาณ 150 ไฟล์คุณสมบัติ java

ในเชลล์สคริปต์วิธีเปรียบเทียบทั้งสองโฟลเดอร์เพื่อดูว่ามีไฟล์คุณสมบัติใหม่หรือไม่และไฟล์คุณสมบัติมีความแตกต่างกันอย่างไร

ผลลัพธ์ควรอยู่ในรูปแบบรายงาน

คำตอบ:


202

หากต้องการรับข้อมูลสรุปของไฟล์ใหม่ / ที่ขาดหายไปและไฟล์ใดที่แตกต่างกัน:

diff -arq folder1 folder2

aถือว่าไฟล์ทั้งหมดเป็นข้อความrไดเรกทอรีย่อยที่ค้นหาซ้ำqรายงาน 'สั้น ๆ ' เฉพาะเมื่อไฟล์ต่างกัน


@reko_t มีวิธีใดบ้างที่จะเรียกใช้ผ่านทางJava
Kasun Siyambalapitiya

27

diff -r จะดำเนินการนี้โดยแจ้งให้คุณทราบว่ามีการเพิ่มหรือลบไฟล์ใดบ้างและมีการเปลี่ยนแปลงอะไรบ้างในไฟล์ที่ได้รับการแก้ไข




-1

คำสั่ง Diff ใน Unix ใช้เพื่อค้นหาความแตกต่างระหว่างไฟล์ (ทุกประเภท) เนื่องจากไดเร็กทอรีเป็นไฟล์ประเภทหนึ่งความแตกต่างระหว่างสองไดเร็กทอรีสามารถเข้าใจได้ง่ายโดยใช้คำสั่ง diff สำหรับตัวเลือกเพิ่มเติมให้ใช้man diffบนกล่องยูนิกซ์ของคุณ

 -b              Ignores trailing blanks  (spaces  and  tabs)
                 and   treats  other  strings  of  blanks  as
                 equivalent.

 -i              Ignores the case of  letters.  For  example,
                 `A' will compare equal to `a'.
 -t              Expands <TAB> characters  in  output  lines.
                 Normal or -c output adds character(s) to the
                 front of each line that may adversely affect
                 the indentation of the original source lines
                 and  make  the  output  lines  difficult  to
                 interpret.  This  option  will  preserve the
                 original source's indentation.

 -w              Ignores all blanks (<SPACE> and <TAB>  char-
                 acters)  and  treats  all  other  strings of
                 blanks   as   equivalent.    For    example,
                 `if ( a == b )'   will   compare   equal  to
                 `if(a==b)'.

และยังมีอีกมากมาย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.