הבנת פקודת לינוקס: Ar
ה גנוar תכנית יוצר, משנה ומחלץ פריטים מארכיוני קבצים. א ארכיון הוא קובץ בודד המכיל אוסף של אחרים קבצים במבנה המאפשר לאחזר את הקבצים הבודדים המקוריים (נקרא חברים של הארכיון).
סקירה כללית

התוכן, המצב (הרשאות), חותמת הזמן, הבעלים והקבוצה של הקבצים המקוריים נשמרים בארכיון וניתן לשחזר אותם בחילוץ.
גנו ar יכול לנהל ארכיונים שלחבריהם יש שמות בכל אורך; עם זאת, תלוי איך ar מוגדר במערכת שלך, ייתכן שתוטל הגבלה על אורך שם החבר לצורך תאימות עם פורמטי ארכיון המתוחזקים עם כלים אחרים. אם הוא קיים, המגבלה היא לרוב 15 תווים.
Ar נחשב לכלי עזר בינארי מכיוון שארכיונים מהסוג הזה משמשים לרוב בתור ספריות מחזיק בתתי שגרות נחוצות בדרך כלל.
Ar יוצר אינדקס לסמלים המוגדרים במודולי אובייקט הניתנים להעברה בארכיון כאשר אתה מציין את השינוי ס. לאחר היצירה, האינדקס הזה מתעדכן בארכיון בכל פעם ar עושה שינוי בתוכן שלו (למעט ה ש פעולת עדכון). ארכיון עם אינדקס כזה מזרז את הקישור לספרייה, ומאפשר לשגרות בספרייה להתקשר זו לזו ללא קשר למיקומן בארכיון.
אתה מורשה להשתמש nm -s אוֹ nm --print-armap כדי לרשום את טבלת האינדקס הזו. אם לארכיון חסרה הטבלה, צורה אחרת של ar שקוראים לו ranlib מוסיף רק את הטבלה.
גנו ar נועד להיות תואם לשני מתקנים שונים. שלוט בפעילות שלו באמצעות אפשרויות שורת הפקודה, כמו הזנים השונים של ar עַל מערכות יוניקס; או, אם אתה מציין את הסינגל פקודהאפשרות קו -M, אתה יכול לשלוט בו עם סקריפט שסופק מקלט סטנדרטי.
תַקצִיר
הפקודה לובשת את הצורה הכללית הבאה:
ar [-X32_64] [-]p[mod [relpos] [ספירה]] ארכיון [חבר...]
אפשרויות
גנו ar מאפשר לערבב את קוד הפעולה ע ודגלי משנה mod בכל סדר, בתוך הארגומנט הראשון של שורת הפקודה.
אם תרצה, תוכל להתחיל את הארגומנט הראשון של שורת הפקודה במקף.
ה ע מכתב מפתח מציין איזו פעולה לבצע; זה יכול להיות כל אחד מהבאים, אבל עליך לציין רק אחד מהם:
- ד: לִמְחוֹק מודולים מהארכיון. ציין את שמות המודולים למחיקה חבר; הארכיון לא ייפגע אם אתה מציין שאין קבצים למחיקה. אם אתה מציין את v מַתקֵן, ar מפרט כל מודול בזמן שהוא נמחק.
- M: השתמש בפעולה זו כדי מהלך \ לזוז \ לעבור חברים בארכיון. הסדר של חברים בארכיון יכול לעשות הבדל באופן הקישור של תוכניות באמצעות הספרייה, אם סמל מוגדר ביותר מחבר אחד. אם לא נעשה שימוש בשינויים עם M, כל החברים שאתה שם ב- חבר הטיעונים מועברים ל- סוֹף של הארכיון; אתה יכול להשתמש ב א, ב, או אני שינויים כדי להעביר אותם למקום מוגדר במקום זאת.
- ע: הדפס החברים שצוינו בארכיון, לקובץ הפלט הסטנדרטי. אם ה v מוגדר, הצג את שם החבר לפני העתקת התוכן שלו לפלט סטנדרטי. אם אתה מציין לא חבר ארגומנטים, כל הקבצים בארכיון מודפסים.
- ש: הוספה מהירה; היסטורית, הוסף את הקבצים חבר עד הסוף של ארכיון, מבלי לבדוק אם יש החלפה. המשתנים א, ב, ו אני לַעֲשׂוֹת לֹא להשפיע על פעולה זו; חברים חדשים תמיד ממוקמים בסוף הארכיון. המשנה v עושה ar רשום כל קובץ כפי שהוא מצורף. מכיוון שהנקודה של פעולה זו היא מהירות, אינדקס טבלת הסמלים של הארכיון אינו מתעדכן, גם אם הוא כבר קיים; אתה יכול להשתמש אר ס אוֹ ranlib במפורש לעדכן את אינדקס טבלת הסמלים. עם זאת, יותר מדי מערכות שונות מניחות שהוספה מהירה בונה מחדש את האינדקס, ולכן GNU ar מיישמת "q" בתור מילה נרדפת ל"r".
- ר: הכנס את הקבצים חבר לְתוֹך ארכיון (עם תַחֲלִיף). פעולה זו שונה מ ש בכך שכל החברים הקיימים בעבר נמחקים אם שמותיהם תואמים לאלה שנוספו. אם אחד הקבצים ששמו ב חבר לא קיים, ar מציג הודעת שגיאה ומשאיר ללא הפרעה את כל החברים הקיימים בארכיון התואמים את השם הזה. כברירת מחדל, חברים חדשים מתווספים בסוף הקובץ, אבל אתה יכול להשתמש באחד מהשינויים א, ב, או אני לבקש מיקום ביחס לחבר קיים כלשהו. המשנה v בשימוש בפעולה זו מעורר שורת פלט עבור כל קובץ שהוכנס, יחד עם אחת האותיות א אוֹ ר כדי לציין אם הקובץ צורף (אף חבר ישן לא נמחק) או הוחלף.
- ט: הצג א שולחן פירוט התוכן של ארכיון, או אלה של הקבצים הרשומים ב חבר שנמצאים בארכיון. בדרך כלל רק שם החבר מוצג; אם אתה רוצה לראות גם את המצבים (הרשאות), חותמת הזמן, הבעלים, הקבוצה והגודל, תוכל לבקש זאת על ידי ציון v מַתקֵן. אם לא תציין א חבר, כל הקבצים בארכיון מופיעים ברשימה. אם יש יותר מקובץ אחד באותו שם (נניח, fie) בארכיון (נגיד תוֹאַר רִאשׁוֹן), ar t b.a fie מפרט רק את המופע הראשון; כדי לראות את כולם, עליך לבקש רשימה מלאה - בדוגמה שלנו, ar t b.a.
- איקס: לחלץ חברים (על שם חבר) מהארכיון. להשתמש ב v משנה עם הפעולה הזו כדי לבקש זאת ar רשום כל שם בזמן שהוא מחלץ אותו. אם לא תציין א חבר, כל הקבצים בארכיון מחולצים.
מספר מתקנים עשויים מיד לעקוב אחר ה ע אותיות מפתח, כדי לציין וריאציות על התנהגות פעולה:
- א: הוסף קבצים חדשים לאחר חבר קיים בארכיון. אם אתה משתמש במשנה א, שמו של חבר ארכיון קיים חייב להיות נוכח בתור relpos טיעון, לפני ה ארכיון מִפרָט.
- ב: הוסף קבצים חדשים לפני חבר קיים בארכיון. אם אתה משתמש במשנה ב, שמו של חבר ארכיון קיים חייב להיות נוכח בתור relpos טיעון, לפני ה ארכיון מפרט (זהה כמו אני).
- ג: צור הארכיון. הארכיון שצוין נוצר תמיד אם הוא לא היה קיים, כאשר אתה מבקש עדכון. אבל אזהרה מונפקת אלא אם כן תציין מראש שאתה מצפה ליצור אותו, על ידי שימוש בשינוי זה.
- ו: קטוע שמות בארכיון. גנו ar בדרך כלל יאפשר שמות קבצים בכל אורך, ויאלץ אותו ליצור ארכיונים שאינם תואמים את ar תוכנית במערכות מסוימות. אם תאימות היא דאגה, ה ו ניתן להשתמש ב-modifier כדי לחתוך שמות קבצים בעת הכנסתם לארכיון.
- אני: הוסף קבצים חדשים לפני חבר קיים בארכיון. אם אתה משתמש במשנה אני, שמו של חבר ארכיון קיים חייב להיות נוכח בתור relpos טיעון, לפני ה ארכיון מפרט (זהה כמו ב).
- ל: שינוי זה מתקבל אך אינו בשימוש.
- נ: משתמש ב- לספור פָּרָמֶטֶר. זה משמש אם יש מספר ערכים בארכיון עם אותו שם. חלץ או מחק מופע לספור של השם הפרטי מהארכיון.
- o: לשמר את מְקוֹרִי תאריכי החברים בעת חילוץם. אם לא תציין משנה זה, קבצים שחולצו מהארכיון יוטבעו בזמן החילוץ.
- פ: השתמש בשם הנתיב המלא בעת התאמת שמות בארכיון. גנו ar לא יכול ליצור ארכיון עם שם נתיב מלא, אבל יוצרי ארכיון אחרים יכולים. אפשרות זו תגרום ל-GNU ar להתאים שמות קבצים באמצעות שם נתיב שלם, מה שיכול להיות נוח בעת חילוץ קובץ בודד מארכיון שנוצר על ידי כלי אחר.
- ס: כתוב אינדקס קובץ אובייקט לארכיון, או עדכן קיים, גם אם לא נעשה שינוי אחר בארכיון. אתה יכול להשתמש בדגל השינוי הזה עם כל פעולה או לבד. רץ אר ס על ארכיון שווה ערך לריצה ranlib על זה.
- ס: אל תיצור טבלת סמלים בארכיון. הגדרה זו יכולה להאיץ את בניית ספרייה גדולה במספר שלבים. לא ניתן להשתמש בארכיון שהתקבל עם המקשר. על מנת לבנות טבלת סמלים, עליך להשמיט את ה ס משנה בביצוע האחרון של ar, או שאתה חייב לרוץ ranlib על הארכיון.
- u: בדרך כלל, אר ר... מוסיף את כל הקבצים הרשומים לארכיון. אם תרצה להכניס רק אלה מהקבצים שאתה מפרט שהם חדשים יותר מחברים קיימים באותם שמות, השתמש בשינוי זה. ה u שינוי מותר רק עבור הפעולה ר (החלף). במיוחד השילוב qu אסור, שכן בדיקת חותמות הזמן תאבד כל יתרון מהירות מהפעולה ש.
- v: משנה זה מבקש את מִלוּלִי גרסה של פעולה. מוצגות פעולות רבות מידע נוסף, כגון שמות קבצים מעובדים, כאשר השינוי v מצורף.
- V: משנה זה מציג את מספר הגרסה של ar.
להשתמש ב איש פקודה (% איש) כדי לראות כיצד נעשה שימוש בפקודה במחשב הספציפי שלך.
צורות אחרות של אחסון בארכיון
לינוקס תומכת בשיטות רבות ושונות לארכיון קבצים. לדוגמה, קובצי ZIP הם פלטפורמות שונות. למרות ש ar מועיל עבור ארכיונים מקומיים מהירים, שקול פורמטים חלופיים אם אתה מתכנן לשתף את הארכיון עם מישהו המשתמש ב-Windows.