11Aug

IT Geek: כיצד לשמור קבצים עם אותו שם סינכרון

click fraud protection

יש לך כנראה שמעו על שירותים, כגון Dropbox, אשר משמשים לשמור קבצים מסונכרנים על פני מספר מכונות.עם זאת, מה אם אתה רוצה לבצע פעולה זו על מחשב אחד?כלומר, לשמור קבצים שיש להם את אותו שם קובץ מסונכרן על פני המכונה כך שכאשר אחד הקבצים משתנה, הם כולם מעודכנים.

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

איך זה עובד

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

הכלי שלנו מנסה לפתור את הבעיה של צורך ללכת ידנית להחיל את הקובץ המעודכן לכל תיקיית המקור.מה זה עושה:

  1. מחפש את כל הקבצים עם שם מסוים( library.js) בתוך תיקיית השורש שצוין( % UserProfile% \ Documents \ Web Sites).
  2. עבור כל הקבצים בשם library.js, הוא מאתר את אחד אשר שונה לאחרונה ואת הערות הערך הקובץ hash שלה.
  3. instagram viewer
  4. כל הקבצים האחרים שנקראים library.js( שאינם העותק העדכני ביותר), יש להם את הערך hash של הקובץ לעומת האחרון( שנקבע בשלב הקודם).
  5. אם ערכי ה- hash של הקובץ שונים, העתק המתאים של הספריה.ג'ס מוחלף בעותק המעודכן האחרון.

מכיוון שאנו משתמשים בערכי Hash כדי להשוות את הקבצים, אנו בטוחים שכל הקבצים המוחלפים אכן שונים מהעותק האחרון.לדוגמה, אם היית להפעיל את התהליך 5 תחליפים הקובץ נעשו, הרצת התהליך שוב מיד לאחר מכן לא לבצע כל תחליפים מאז ערכי קובץ hash עכשיו זהים.

עדכון כלי העדכון העדכני ביותר

העדכון של כלי העדכון החדש כלי הוא גרסה שונה של סקריפט אצווה עם אותו שם( שניהם זמינים להורדה באמצעות הקישורים בתחתית המאמר) אשר הוסב לקובץ EXEכדי לכלול את השירות הנדרש Nirsoft HashMyFiles.יש להפעיל את הכלי משורת הפקודה עם פרמטרים מסוימים שצוינו.אם היית רק להפעיל את קובץ EXE על ידי לחיצה כפולה, תקבל הודעה המציינת את זה.

כדי להשתמש בעדכון העדכון החדש, ניתן להציג את הפרמטרים על ידי הפעלת "UpdateToNewestCopy /?" אשר מציג את הדיאלוג הבא:

הפרמטרים הנדרשים רק הם SourceFolder( למשל% UserProfile% \ מסמכים \ אתרי אינטרנט) ואת FileName( ספריה).עם זאת, ניתן לשנות את הפונקציונליות על ידי הוספת מתגים נוספים כמתואר לעיל.

דוגמאות

הפקודה הבאה תמצא את כל הקבצים בשם "Common.vb" בתוך התיקיה "C: \ users \ jfaulkner \ Documents \ Code Files", ביצוע החלפה אך ביצוע גיבוי של העותק הנוכחי לפני החלפה( פלט זה הואמה שהופך את התמונה העליונה עבור מאמר זה):

UpdateToNewestCopy "C: \ users \ jfaulkner \ Documents \ Code Files" Common.vb / B

הפקודה הבאה מבצעת את אותה פעולת חיפוש כמפורט לעיל, אך היא מדווחת רק על קבצים שהיומוחלפת ולא מבצעת פעולות כלשהן של קבצים:

UpdateToNewestCopy "C: \ users \ jfaulkner \ Documents \ Code Files" Common.vb / V

נניח שיש קובץ בשם "C: \ Config \ FilesToSearch.txt" עםתוכן הבא:

library.js
Common.vb

הפקודה הבאה תחפש בתיקייה המסמכים שלי של המשתמש הנוכחי ותדווח על עדכונים כלשהם ל "library.js" ו- "Common.vb", אבל לא ממש pלבצע פעולות עדכון:

UpdateToNewestCopy "% UserProfile% \ Documents" "C: \ Config \ FilesToSearch.txt" / L / V

אוטומציה של התהליך

תהליך זה הוא מועמד אידיאלי לאוטומציה.על ידי יצירת משימה מתוזמנת( לא נדרש שום דבר מיוחד) עם ההגדרות שצוינו ויש צורך לרוץ מדי יום /hourly/ כל 15 דקות( בהתאם לדרישות שלך), אתה יכול לשמור קבצים sync'ed ב נכון להגדיר את זה ושכח- it- אופנה.

הורד עדכון

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