logo

גע בפקודה בלינוקס/יוניקס עם דוגמאות

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

הוא זמין ב-ReactOS, Unix, FLEX של TSC, מערכות הפעלה דמויות Unix, מעטפת Microware OS-9, מעטפת AROS ו-Digital Research/Novell DR DOS. כמו כן, הפקודה זמינה עבור Microsoft Windows ו- FreeDOS.

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

SUS (Single Unix Specification) מגדיר שפקודת המגע צריכה לשנות את זמני השינוי, זמני הגישה או שניהם עבור הקבצים. הקובץ מזוהה על ידי שם נתיב מיובא כארגומנט אחד. כמו כן, זה מייצג שאם הקובץ שזוהה לא קיים, הקובץ נוצר, וזמני השינוי והגישה קבועים כמפורט. פקודת המגע מחילה את השעה הנוכחית אם לא צוינו חותמות זמן חדשות.

היסטוריה קצרה של מגע

ראשית, כלי מגע התרחש בגרסה 7 AT&T UNIX. הפקודה זמינה היום עבור מספר מערכות הפעלה שונות, כולל מערכות שונות של Unix, DOS, Unix, מערכת ההפעלה הקלאסית של Mac OS ו-Microsoft Windows. שחרור המגע המקובץ ב-coreutils של GNU צוין על ידי פול רובין, רנדי סמית', דיוויד מקנזי, ג'ים קינגדון וארנולד רובינס.

עבור Microsoft Windows, הפקודה היא חבילה מבודדת כחלק מאוסף UnxUtils של יציאות Win32 המקוריות של כלי עזר דמויי GNU Unix. מהדורת FreeDOS מורשית ב-GPL ושולבה על ידי Kris Heidenstrom. KolibriOS ו-DR DOS 6.0 מוסיפים את היישום של פקודת המגע. כמו כן, פקודת המגע נשלחה ל-IBM i OS.

עבודה של מגע באובונטו

touch היא פקודת לינוקס נפוצה ליצירת קובץ ריק או לשנות את חותמות הזמן של הקובץ (זמן גישה לקובץ, תאריך אחרון או שינוי).

java scan.nextstring

חותמות זמן

קבצי Linux מכילים שלוש חותמות זמן: ctime, mtime ו-atime. חותמות זמן אלו מוסברות להלן:

    זמן:הוא כולל פרטים על מתי תוכן הקובץ נקרא עם פקודות או כלים להצגת תוכן הקובץ כמו head, grep, cat, vim, vi, nano, less וכו'. חותמת הזמן של atime משתנה ומתעדכנת בכל פעם שהיא נבדק.mtime:הוא מציג את השינוי האחרון של התוכן של קובץ, כגון שמו, אבל רק את הקובץ עצמו, לא את ההרשאה או הבעלים שלו.ctime:כמו כן, ctime מייצג כאשר קובץ כלשהו משתנה, אך הוא גם מתעדכן אם ההרשאה, הקבוצה או הגישה לבעלות על קובץ כלשהו משתנים. אנחנו יכולים לערוך את ה-mtime ואת ה-atime, אבל אנחנו לא יכולים לשנות את ה-ctime. השעה תעודכן אם ההרשאות של קובץ ישתנו או אם הקבצים ישתנו או יקראו.

תחביר:

 touch 

דוגמא:

 touch myfile1 

פקודה TOUCH

תסתכל למעלה, יצרנו שני קבצים, כלומר 'myfile1' ו-'myfile2' באמצעות פקודת מגע. כדי ליצור קבצים מרובים פשוט הקלד את כל שמות הקבצים בפקודת מגע אחת ואחריה מקש Enter. לדוגמה, אם תרצה ליצור את 'myfile1' ו-'myfile2' בו-זמנית, הפקודה שלך תהיה:

 touch myfile1 myfile2 

גע באפשרויות

אוֹפְּצִיָהפוּנקצִיָה
לגעת -א כדי לשנות את הגישה לקובץ וזמן השינוי.
מגע -מ הוא משמש רק לשינוי זמן של קובץ.
לגעת ב-r לעדכון זמן של קובץ אחד בהתייחסות לקובץ השני.
מגע -ת כדי ליצור קובץ על ידי ציון השעה.
לגעת -ג זה לא יוצר קובץ ריק.
-d=, --date=אפשרות זו משמשת לשינוי חותמת הזמן עם מחרוזת תאריך.
-ה, --אין-התייחסותזה משנה את חותמת הזמן של קישור סמלי.
-f אין השפעה.האפשרות מאלצת שינויים ב-BSD ישן יותר.
--גרסה, -vזה מציג את גרסת התוכנית.
--עֶזרָהזה מציג את תפריט העזרה.

Linux touch -פקודה

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

תחביר:

 touch -a 

דוגמא:

 touch -a usr 

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

מה מחווט אוטומטי ב-java
גע בפקודה

בתמונת המצב שלמעלה השתמשנו בפקודה 'stat' (שאותה נלמד במדריך מאוחר יותר) רק כדי לבדוק את המצב של הספרייה שלנו (usr). אז אל תתבלבלו עם זה. עכשיו אתה יכול להתאים את זמן הגישה של הספרייה (usr) לפני ואחרי העברת הפקודה 'touch -a usr. זה לקח את זמן הגישה המוגדר כברירת מחדל של המערכת שלנו.

פקודת Linux touch -m

אפשרות המגע '-m' תעזור לך לשנות רק את זמן השינוי של קובץ.

תחביר:

 touch -m 

דוגמא:

 touch -m usr 
פקודה TOUCH

שימו לב בזהירות בתמונת המצב לעיל, רק זמן השינוי השתנה.

אפשרות Linux touch -r

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

מחרוזת ג'אווה בוליאנית

בדוגמה למטה, אנו רוצים לשנות את חותמת הזמן של 'Demo.txt' בהתייחס ל 'demo.txt' . ראשית אתה יכול לכתוב את זה בתור,

 touch -r demo.txt Demo.txt 

אוֹ

 touch Demo.txt -r demo.txt 

ראשית נראה את המצב של שני הקבצים לפני השימוש בפקודה מגע.

פקודה TOUCH

עכשיו לאחר השימוש touch -r demo.txt Demo.txt פקודה, זמן של Demo.txt השתנה בהתייחסות לזמן של demo.txt

פקודה TOUCH

פקודת Linux touch -t

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

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

פורמט הזמן יהיה:

מחרוזת בפורמט c
 touch -t YYYYMMDDhhmm.ss 

צילום המסך למטה מציג את הסטטוס של קובץ 2.webp לפני פקודת המגע,

פקודה TOUCH -t

צילום מסך זה מראה שהזמן של קובץ 2.webp השתנה לפי הזמן שצוין.

Java end for loop
פקודה TOUCH

פקודת Linux touch -c

שימוש באפשרות 'c' עם פקודת מגע לא ייצור קובץ ריק, אם הקובץ הזה לא קיים.

תחביר:

 touch -c 

דוגמא:

 touch -c movie 

פקודה TOUCH

באיור לעיל, רצינו ליצור קובץ 'סרט' אבל עם אפשרות 'c' לא נוצר קובץ.

הגדר חותמת זמן מסוימת

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

 touch -t 

פורמט חותמת הזמן רודף דפוס מסוים:

 [[CC]YY]MMDDhhmm[.ss] 

איפה,

    CC:אלו הן שתי הספרות הראשוניות של השנה.YY:אלו הן שתי הספרות האחרונות לשנה.מ'מ:זה מראה את החודש.DD:זה מראה את היום.חח:זה מראה את השעה.מ'מ:זה מציג את הדקות.ss:זה מראה את השניות.

הגדרת חותמת זמן של קובץ עם מחרוזת הנתונים

אנו יכולים להשתמש בפקודת המגע עם הדגל -d להגדרת חותמת זמן עם מחרוזת תאריך. התחביר שלו הוא כדלקמן:

 touch -d 

מחרוזת התאריך היא פורמט זמן מתכוונן ומאפשרת מספר פורמטים של טקסט קריא אנושי. כמה דוגמאות הן כדלקמן:

  • תאריכים בלוח השנה, למשל, 19 באוגוסט 2020.
  • שעה ביום, למשל, 21:28 או 7:03 בבוקר.
  • ימים בשבוע, למשל, שלישי, רביעי וכו'.
  • זמן יחסי, למשל, לפני 8 שנים, ביום רביעי הבא, אתמול וכו'.