Score:-1

ค้นหาไฟล์ที่ซ้ำกันและแปลงเป็นลิงก์ [WINDOWS]

ธง gb

ผู้ใช้ของฉันมักจะบันทึกไฟล์ที่ซ้ำกันจำนวนมาก ซึ่งใช้พื้นที่มากขึ้นเรื่อยๆ และสร้าง HW และค่าใช้จ่ายในการเก็บถาวร

ฉันคิดที่จะสร้างงานตามกำหนดเวลาเพื่อ:

  1. ค้นหาไฟล์ที่ซ้ำกัน (ตรวจสอบผลรวมไฟล์ MD5 ไม่ใช่เฉพาะชื่อไฟล์ / ขนาด)
  2. ให้เหลือไฟล์ต้นฉบับเพียง 1 ไฟล์
  3. แทนที่สำเนาอื่นที่ซ้ำซ้อนด้วยลิงก์ (ทางลัด) ไปยังไฟล์ (จุดด้านบน)

มีความคิดว่าจะเก็บถาวรได้อย่างไร?

สคริปต์ / เครื่องมือ / เคล็ดลับ ?

แก้ไข 28.10.2021

ฉันพบในระหว่างนี้ findDupe: https://www.sentex.ca/~mwandel/finddupe/

อนุญาตให้สร้างฮาร์ดลิงก์ไปยังไฟล์ต้นฉบับ ฉันลองสิ่งนี้แล้ว - มันแสดงอย่างถูกต้องว่ามีอะไรซ้ำกัน ดูเหมือนว่าสร้างฮาร์ดลิงก์ - แต่... ฉันไม่เห็นความแตกต่างในสถิติการใช้งาน HDD เลย

ทำไมถึงเป็นเช่นนั้น? เป็นไปได้ไหมที่ Windows คำนวณพื้นที่ว่างไม่ถูกต้อง ?

Score:1
ธง cn

ฉันสร้างสคริปต์ขนาดเล็กในหลามที่ตอบสนองความต้องการของคุณ

มันใช้ fdupes -r <dir> เพื่อให้ได้ไฟล์ที่ซ้ำกันทั้งหมด (แม้ชื่อต่างกัน) หลังจากนั้นจะวนซ้ำเอาต์พุตและลบไฟล์ที่ซ้ำกัน จากนั้นสร้างลิงก์สัญลักษณ์

ฉันให้คุณไม่แสดงความคิดเห็นทั้งสอง os.system() บรรทัดเพื่อเปิดใช้งานการแก้ไข

บางทีคุณอาจต้องการส่งพารามิเตอร์ไปยังสคริปต์นี้ (เช่นเส้นทางหรืออื่น ๆ ) ฉันให้คุณค้นหาความต้องการนี้ :)

นำเข้าระบบปฏิบัติการ

root_dir='/บ้าน/ผู้ใช้/ไดเร็กทอรี'

Blocks_of_dup_files = os.popen('fdupes -r' + root_dir).read().split('\n\n')

ถ้า (blocks_of_dup_files[-1] == '') :
    Blocks_of_dup_files.pop()


สำหรับไฟล์ใน Blocks_of_dup_files:
    ไฟล์ = files.split ('\n')
    keeped_file = files.pop()
    สำหรับไฟล์ในไฟล์:
        พิมพ์ ('rm -f' + ไฟล์)
        พิมพ์ ('ln -s ' + keep_file + ' ' + ไฟล์)

        #os.system('rm -f ' + ไฟล์)
        #os.system('ln -s ' + keeped_file + ' ' + ไฟล์)

gb flag
ขอบคุณ. ดูเหมือนว่าโซลูชันของคุณได้รับการแก้ไขแล้วสำหรับ Linux ฉันต้องการสิ่งนั้นสำหรับ Windows (ขออภัยฉันลืมพูดถึงสิ่งนั้นในโพสต์ของฉัน - แก้ไขแล้ว)
gb flag
ตกลง ฉันพบว่าสิ่งนี้สามารถติดตั้งบน Windows - ผ่าน Choco จะให้มันลอง
Score:1
ธง in

สำหรับ Windows ฉันเขียน https://github.com/Caspeco/BlobBackup/tree/master/DuplicateFinder

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

gb flag
ขอบคุณที่แบ่งปันสิ่งนี้ ฉันรวบรวมไว้แล้ว แต่ฉันไม่พบข้อมูลใด ๆ ของพารามิเตอร์บรรทัด cmd วิธีการทำงาน ฯลฯ ฉันตรวจสอบอย่างรวดเร็วโดยเพิ่มหนึ่งพารามิเตอร์ (ไดเร็กทอรีที่จะสแกน) มันส่งคืน: ทำสำเนาเสร็จแล้ว 4 รายการสำรวจใน xxx - แต่ไม่พบ ifo หากพบรายการที่ซ้ำกัน (มีบางส่วน) และไม่มีการเชื่อมโยงข้อมูล (ยาก)
in flag
มันตรงกับขนาดและเช็คซัม (ทดสอบเฉพาะเมื่อพบรายการที่ซ้ำกัน) หากไฟล์ถูกเชื่อมโยงแล้ว ไฟล์จะถูก "ข้าม" หากพบรายการที่ซ้ำกัน ระบบจะพิมพ์ออกมา

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา