Jump to content
  • הצטרפו למשפחה

    היי, היי אתה (או את) שם!

    אנחנו יודעים, נחמד להיות אנונימי, ולמי בכלל יש כוח להירשם או להיות עכשיו "החדשים האלה".

    אבל בתור חברי פורום רשומים תוכלו להנות ממערכת הודעות פרטיות, לנהל מעקב אחרי כל הנושאים בהם הייתם פעילים, ובכלל, להיות חלק מקהילת הרכב הכי גדולה, הכי מגניבה, וכן - גם הכי שרוטה, באינטרנט הישראלי. 

    אז קדימה, למה אתם מחכים? בואו והצטרפו ותהיו חלק מהמשפחה הקצת דפוקה שלנו.
     

dir="rtl" style="text-align:right;"> שימו לב! השרשור הזה בן 3841 ימים, שזה ממש ממש הרבה ולכן הוא ננעל.

אם אתם פותחי השרשור ו/או יש לכם עדכון רלוונטי לנושא - פנו לאחד המנהלים ונפתח את השרשור חזרה לתגובות.

פוסטים מומלצים

פורסם

היי,

 

יש לי תיקית תמונות גדולה שיש לה כמה גיבויים מתקופות שונות.

לפני כשנה / שנתיים שיניתי שמות של קבצים רבים מהשמות המקוריים

אני מעוניין להשוות את הקבצים בתיקיה הנוכחית (עם הקבצים ששמם שונה) אל הקבצים בתיקית הגיבוי מלפני שנתיים וזאת על מנת לוודא שלא נמחקו לי תמונות בטעות בזמן שחלף.

 

מה הדרך הכי טובה למצוא קבצים כפולים עם שמות שונים בין שתי תיקיות (עם תתי תיקיות במבנה שונה האחת מהשניה) ?

 

תודה רבה!

פורסם

תודה רבה, ברשותכם ארחיב את השאלה לקבצים שאינם רק תמונות

למשל, השוואה בין שני HD, מה שאני מחפש זה תוכנה שתאפשר לקבל שתי תיקיות, א, וב, ולהחזיר את כלל הקבצים שקיימים ב א' ולא קיימים ב ב', את הקבצים שקיימים ב ב' וקיימים ב א' ואת הקבצים שקיימים בשתיהן.

ואז תאפשר לבצע פעולות בסיסיות על קבצים אלו (העברה, מחיקה וכו...)

 

מצאתי את https://www.hardcoded.net/dupeguru/ שמאפשרת לעשות את ההשוואה אבל לא מאפשרת לראות את כלל הקבצים שקיימים בתיקיה אחת ולא קיימים בשניה

פורסם

בדברים כאלה בדיוק מגיע הייתרון הגדול של לינוקס.

בלינוקס זה שורה או שניים של סקריפט קצר, 10 דקות של מחשבה וכתיבה וניסיונות וזהו, בחלונות זה ייקח לך יום יומיים של חיפושים בגוגל, התקנות של תוכנות למיניהם (עם סיכוי לוירוס או שניים), עד שתגיע בסוף לתוכנה שתעשה בדיוק מה שאתה רוצה.

אני אנסה לחסוך לך את הוירוסים והזמן היקר, ממה שאני זוכר בחלונות, תבדוק את TOTAL COMMANDER יש לו בפנים כלי להשוואה בין תיקיות בכל מיני אפשרויות של פילטור.

פורסם

כתבתי לך משהו זריז בפייתון שעושה את זה(אם אין לך פייתון אז תצטרך להוריד, https://www.python.org/downloads/release/python-2711/

)

נניח ואתה שומר את זה בתור files.py אז תשתמש בזה ככה:

files.py /Users/user/first_dir /Users/user/sec_dir

כלומר שם הקובץ ואז תיקייה ראשונה (רווח) תיקייה שניה

 

[color=#000080][font=Menlo][b]import [/b][/font][/color][color=#000000][font=Menlo]os[/font][/color][color=#CC7832][font=Menlo], [/font][/color][color=#000000][font=Menlo]sys[/font][/color]
[color=#000080][b]from [/b][/color]hashlib [color=#000080][b]import [/b][/color]md5
[color=#000080][b]from [/b][/color]collections [color=#000080][b]import [/b][/color]defaultdict

[color=#000080][b]def [/b][/color]md5_dict(path):
   md5_dict = defaultdict([color=#000080]list[/color])
   [color=#000080][b]for [/b][/color]root[color=#cc7832], [/color]subfolders[color=#cc7832], [/color]files [color=#000080][b]in [/b][/color]os.walk(path):
       [color=#000080][b]for [/b][/color]file [color=#000080][b]in [/b][/color]files:
           full_path = os.path.join(root[color=#cc7832],[/color]file)
           md5_dict[md5([color=#000080]open[/color](full_path[color=#cc7832],[/color][color=#008000][b]'rb'[/b][/color]).read()).hexdigest()].append(full_path)
   [color=#000080][b]return [/b][/color]md5_dict

[color=#000080][b]def [/b][/color]logic(a_dict[color=#cc7832], [/color]b_dict):
   only_a = []
   only_b = []
   dups = []
   [color=#000080][b]for [/b][/color]key [color=#000080][b]in [/b][/color]a_dict:
       [color=#000080][b]if not [/b][/color]b_dict.has_key(key):
           only_a.append(a_dict[key])
   [color=#000080][b]for [/b][/color]key [color=#000080][b]in [/b][/color]a_dict:
       [color=#000080][b]if [/b][/color]b_dict.has_key(key):
           dups.append(a_dict[key])
   [color=#000080][b]for [/b][/color]key [color=#000080][b]in [/b][/color]b_dict:
       [color=#000080][b]if not [/b][/color]a_dict.has_key(key):
           only_b.append(b_dict[key])

   [color=#000080][b]return [/b][/color]only_a[color=#cc7832], [/color]only_b[color=#cc7832], [/color]dups
first_dict = md5_dict(sys.argv[[color=#0000ff]1[/color]])
sec_dict = md5_dict(sys.argv[[color=#0000ff]2[/color]])

files = logic(first_dict[color=#cc7832], [/color]sec_dict)

[color=#000080][b]print [/b][/color][color=#008000][b]'files that exists only in ' [/b][/color]+ sys.argv[[color=#0000ff]1[/color]]
[color=#000080][b]for [/b][/color]file [color=#000080][b]in [/b][/color]files[[color=#0000ff]0[/color]]:
   [color=#000080][b]print [/b][/color]file

[color=#000080][b]print [/b][/color][color=#008000][b]'files that exists only in ' [/b][/color]+ sys.argv[[color=#0000ff]2[/color]]
[color=#000080][b]for [/b][/color]file [color=#000080][b]in [/b][/color]files[[color=#0000ff]1[/color]]:
   [color=#000080][b]print [/b][/color]file

[color=#000080][b]print [/b][/color][color=#008000][b]'those are the duplicate files:'
[/b][/color][color=#000080][b]for [/b][/color]file [color=#000080][b]in [/b][/color]files[[color=#0000ff]2[/color]]:
   [color=#000080][b]print [/b][/color]file

פורסם

בדקתי את זה עכשיו על הווינדוס(הבעיה לא הייתה קשורה למערכת הפעלה, הקוד עובד על כל מערכות ההפעלה) וראיתי שיש בעיה קטנה אבל אני לא יכול לערוך את ההודעה המקורית.

איפה שיש:

dups.append(a_dict[key])

תשנה ל:

dups.append(a_dict[key] + b_dict[key])

 

וכך זה אמור להציג את כל הקבצים הכפולים

פורסם

דווקא לפני כמה ימים השתמשתי בתוכנה

EASY DUPLICATE FINDER 4

תקפה גם לתמונות וגם לסרטונים.

עבדה יפה מאוד על גבי כוננים שונים.

מוכר סטים קומפוננט ומגברים ברמה גבוהה לרכב!

 טוויטרים HYBRID AUDIO L1 PRO + L1V2

מידריינג Hybrid Audio L4

מגברים לרכב - TRU TECHNOLOGY S44 - \ TRU TECHNOLOGY S45

×
×
  • תוכן חדש...