כיצד לא לכלול קבצים מארכיון Zip
תוכן עניינים:
הדרך הקלה ביותר לא לכלול קבצים ספציפיים רבים או קבוצה של קבצים תואמים מארכיון zip היא על ידי דילוג על כלי ה-zipping קל המובנה בממשק המשתמש הידידותי של Mac OS X ולעבור לשורת הפקודה, שם פקודת zip רבת עוצמה שוכנת. זה שימושי ממיליון ואחת סיבות, אבל המניע העיקרי לפוסט זה נוגע לקבצי DS_Store שמצרפים יחד עם ארכיוני zip שנוצרו ב-Mac, רק כדי לבלבל מחשב אחר שפותח את הקובץ, בין אם זה באחר. Mac, Windows PC או לינוקס.זה קורה גם עם כלי ה-zip הידידותי וגם עם כלי ה-zip שורת הפקודה כברירת מחדל, וזה בגלל שהתנהגות ברירת המחדל של כלי ה-zipping היא לכלול קבצים מוסתרים בין אם הם מוצגים או לא. זה לא בהכרח דבר רע ובמקרים רבים זה ייחשב שימושי, אבל אם אתה לא רוצה שהם, או כל קובץ אחר לצורך העניין, יופיעו בארכיון שלך, אז המשך לקרוא.
כיצד לא לכלול קבצים מארכיון Zip
היסודות של אי הכללת קבצים בעת יצירת ארכיון zip מרוכזים סביב דגל -x, המשמש להחרגת קבצים מהארכיון התואמים לשם או דפוס ספציפיים. במקרה הבסיסי ביותר, זה ייראה כך:
"zip archive.zip files -x ExcludeMe"
כלומר שאתה יכול לא לכלול קובץ בודד, אמור שהוא נקרא "Nothanks.jpg"
"zip archive.zip images/ -x Nothanks.jpg"
בואו נסקור כמה דוגמאות ספציפיות שבהן זה שימושי.
אל תכלול קבצי .DS_Store מארכיוני Zip
זה ימנע את קבצי המטא-נתונים .DS_Store הבלתי נראים של Mac בדרך כלל להיכלל בארכיון zip, המצורפים כברירת מחדל:
"zip -r archivename.zip archivedirectory -x .DS_Store"
אם עם זאת הספרייה כוללת ספריות משנה, תרצה להשתמש בגרסה אחרת של הפקודה הזו כדי לא לכלול גם את קבצי ds_store מספריות המשנה:
"zip -r archive.zip directory -x /\.DS_Store"
הערה: לא כל הפגזים דורשים את המירכאות כדי שהפקודה הזו תעבוד כמו שצריך, אבל במעטפת bash (ברירת המחדל עבור Mac OS X) תצטרך להשתמש במירכאות להחרגה עם תווים כלליים ותבניות.
אי הכללה של סוגי קבצים ספציפיים מארכיון Zip
עם תווים כלליים, אתה יכול גם לא לכלול את כל הקבצים מסוג מסוים על ידי התמקדות בתוסף. לדוגמה, פקודה זו תדחוס ספרייה שלמה, מינוס כל קבצי jpg:
"zip -r archive.zip directory -x .jpg"
ניתן לשנות עבור כל סיומת קובץ ספציפית או תבנית מתאימה בשם קובץ.
אל תכלול את ספריית .git או .svn מארכיון Zip
"דחוס ספרייה, מינוס .git והתוכן שלה: zip -r zipdir.zip directorytozip -x .git "
דחוס תיקיה, מבלי לכלול את ספריית .svn: zip -r zipped.zip directory -x .svn "
אל תכלול את כל הקבצים המוסתרים מארכיון Zip
מכיוון שניתן להשתמש בתבניות ותווים כלליים לחיפוש, אתה יכול גם לא לכלול כל או את כל הקבצים והתיקיות הבלתי נראים שנוצרו כך על ידי קידומת של נקודה, בין אם זה ספרייה כמו .svn או קובץ בודד כמו .bash_profile או .htaccess.
zip -r archivename.zip directorytozip -x ."
או כדי לא לכלול את כל הקבצים הבלתי נראים מכל ספריות המשנה:
"zip -r archive.zip directory -x /\."
כל הכבוד למגיב בפורומים של Macworld על התחביר המדויק על אי הכללת קבצים אלה גם מתיקיות המשנה.
בסופו של דבר, זו רק סיבה נוספת למשתמשים חזקים לקפוץ לטרמינל ליצירת ארכיונים. עם תכונות עוצמתיות כמו תמיכה בתווים כלליים, אי הכללה והגנה אופציונלית על ידי סיסמה של רוכסנים, זה פשוט כולל יותר, ומכיוון שהכל כלול ב-Mac בכל מקרה, לא תצטרך להוריד אפליקציה נוספת כדי לתמוך בתכונות המתקדמות.
וכן, מבחינה טכנית אם היית נחוש להישאר בממשק המשתמש, תוכל להשתמש באופרטורים של Finder ו-Spotlight כדי לצמצם את תוכן התיקיה ב-Mac OS X לפני יצירת ארכיון, או פשוט בחר הכל וידני Command+לחץ על כל קובץ כדי לא לכלול, אבל זה ממש לא יעיל עבור פעולות ארכיון גדולות.לפיכך, הטרמינל מנצח בקלות, ולמרות שהוא מרוכז סביב שורת הפקודה, זה ממש לא מסובך ברגע שאתה לומד את היסודות.