לינוקס מאפשרת לך לאחסן את פלט הפקודה בקבצים כאמצעי לניתוב פלט מחדש. כאשר אתה שומר את הפלט לקובץ באמצעות ה > אוֹ >> מפעילים, הפלט מנותב ללא מידע המוצג בטרמינל.
אבל מה אם אתה רוצה להדפיס את הפלט על המסך ולאחסן אותו בקובץ בו זמנית? למרות שאינך יכול לעשות זאת עם אופרטורי הניתוב מחדש של הפלט, אפשר לעשות זאת באמצעות פקודת tee בלינוקס.
תחביר פקודות בסיסי
tee הוא כלי עזר סטנדרטי של לינוקס המשמש לפיצול הפלט של פקודה בין הפלט הסטנדרטי לקבצים.
בניגוד לרוב הפקודות לינוקס, משתמשים ב-te עם תוכניות אחרות המשתמשות בצינור (|). מפעיל הצינור - אחד מה מפעילי שורת פקודה רבים ב-Linux - מאפשר לתוכנית להשתמש בפלט של פקודה אחרת כקלט שלה. ייתכן שהשתמשת ב-pipe תוך כדי שימוש ב-grep לצד הפקודה ls או חתול.
התחביר הבסיסי של פקודת tee הוא:
פקודה | נתיב הקובץ של אפשרויות tee
...איפה אפשרויות ו נתיב קובץ הם הארגומנטים של שורת הפקודה והנתיב לקובץ שבו ברצונך לאחסן את הפלט.
פיצול פלט מסוף בלינוקס עם טי
השימוש הפשוט ביותר ב-te הוא לפצל את הפלט כדי להציג אותו בטרמינל וכן לאחסן אותו בתוך קובץ. לדוגמה, כדי לאחסן את הפלט של הפקודה ls בקובץ טקסט בשם "
output.txt"רוץ:ls | tee ./output.txt
הפלט יציג את התוכן של ספריית העבודה הנוכחית כרגיל. בבדיקת קובץ output.txt, תגלה כי טי שמרה את הפלט גם בקובץ.
כאשר אתה מציין נתיב לקובץ, טי בודק אם הקובץ קיים. אם הוא לא מוצא אחד, הוא יוצר עבורך אוטומטית את הקובץ, מה שהופך אותו נוח לשימוש בסקריפטים של מעטפת. זה שימושי כאשר ברצונך לרשום את הפלט של תוכנית או סקריפט לעיון מאוחר יותר.
תצטרך להקדים את הפקודה tee עם sudo כדי לקרוא או לאחסן נתונים בקובץ שבבעלות משתמש השורש.
אם בקובץ שצוין יש נתונים מאוחסנים שאינך רוצה להחליף, השתמש ב- -א דגל ל לְצַרֵף הפלט לקובץ, במקום לנקות את כל הקובץ ולאחר מכן לשמור את הנתונים:
ls | tee -a ./output.txt
באופן דומה, אתה יכול להפנות את הפלט למספר קבצים על ידי ציון הנתיבים, מופרדים על ידי רווחים בודדים:
ls | tee ./output1.txt ./output2.txt
לפעמים, שגיאות בלתי צפויות או הפרעות ידניות (באמצעות Ctrl + C אוֹ Ctrl + Z) בפקודה הקודמת יכול לגרום לטי להפסיק. כדי להתעלם מהפרעות כאלה, השתמש ב- -אני דֶגֶל:
ls | tee -i output.txt
ל לקבל עזרה בשורת הפקודה לגבי טי או מצא את פרטי הגרסה, השתמש ב- --עֶזרָה ו --גִרְסָה דגלים כדלקמן:
טי --עזרה
טי --גרסה
הפניית הפלט לפקודה אחרת
אתה יכול ליצור שרשרת פלט על ידי שילוב של פקודות לינוקס אחרות. פעולה זו תשמור את הפלט בקובץ שצוין ולאחר מכן תעביר אותו לפקודה הבאה לעיבוד.
השתמש בפורמט הבא כדי להפנות את הפלט של טי לפקודה אחרת:
פקודה | tee filepath | פקודה אחרת
לדוגמה, הפקודה הבאה תשמור את פלט הפקודה ls ל output.txt לפני סוף סוף להפנות אותו ל-grep לחיפוש מהיר:
ls | tee output.txt | grep "מסמכים"
בסך הכל, אתה יכול להשתמש בפקודת tee כדי לשחק איתה הקלט והפלט הסטנדרטיים בלינוקס.
מניפולציה של פלט וטקסט עם פקודות לינוקס
הפקודה tee מוסיפה פונקציונליות נחוצה למפעילי הניתוב מחדש של הפלט הסטנדרטיים בלינוקס. אתה יכול אפילו להשתמש בו כדי לתפעל את הפלט של פקודה לפני העברתה לתוכנית אחרת.
באופן דומה, אתה יכול לשנות טקסט באמצעות הטרמינל בעזרת כמה פקודות לינוקס סטנדרטיות. אולי ייקח להם קצת זמן להתרגל, אבל בסופו של דבר, מניפולציה של טקסט באמצעות שורת הפקודה שווה ללמוד לכל מנהל מערכת.