4Sep

כיצד לשמור את הפלט של פקודה לקובץ בשא( aka מסוף לינוקס ו- MacOS)

click fraud protection

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

זה עובד bash על כל מערכת הפעלה, מ- Linux ו- MacOS ל- Windows 10 של אובונטו מבוססי בס הסביבה.

אפשרות ראשונה: הפניה מחדש של פלט לקובץ רק

כדי להשתמש בהפניה מחדש של bash, אתה מפעיל פקודה, ציין את & gt;או & gt; & gt;, ולאחר מכן לספק את הנתיב של קובץ אתה רוצה הפלט מנותב אל.

  • & gt;מפנה מחדש את הפלט של פקודה לקובץ, ומחליף את התוכן הקיים של הקובץ.
  • & gt; & gt;מפנה מחדש את הפלט של פקודה לקובץ, תוך צירוף הפלט לתוכן הקיים של הקובץ.

מבחינה טכנית, זה מפנה מחדש את "stdout" - הפלט הסטנדרטי, שהוא המסך לקובץ.

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

ls & gt;קובץ /path/to/

אין צורך לציין את הנתיב לקובץ קיים.ציין כל נתיב חוקי, ובאש תיצור קובץ במיקום זה.

instagram viewer

אם תציג את תוכן הקובץ, תראה את הפלט של הפקודה ls.לדוגמה, הפקודה חתול מדפיסה את תוכן הקובץ למסוף:

cat /path/to/ file

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

uname -a & gt; & gt;/path/to/ file

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

כאשר אתה מציג את תוכן הקובץ, תראה את התוצאות של הפקודה השנייה שלך היו מצורפים לסוף הקובץ:

אתה יכול לחזור על תהליך זה כמה פעמים שתרצה לשמור על הפלט פלט בסוףקוֹבֶץ.

אפשרות שנייה: הדפס פלט בדרך כלל והפנה אותו לקובץ

ייתכן שלא תרצה להפנות מחדש את הפלט עם & gt;או & gt; & gt;אופרטורים, שכן לא תראה את הפלט של הפקודה בטרמינל.זה מה הפקודה tee היא.הפקודה tee מדפיסה את הקלט שהיא מקבלת למסך ו- שומרת אותו לקובץ בו-זמנית.

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

|tee /path/to/ קובץ

זה יחליף כל דבר בקובץ עם הפלט של הפקודה, בדיוק כמו & gt;מַפעִיל.

כדי לצייד את הפלט של פקודה כדי טי, הדפסה אל המסך ושמירתו לקובץ, אך צירוף אותו לסוף הקובץ: הפקודה

|tee-/path/to/ file

זה יוסיף את הפלט לסוף הקובץ, בדיוק כמו & gt; & gt;מַפעִיל.

מעטפת הבאש כוללת מספר אופרטורים מתקדמים נוספים המפעילים פונקציות דומות.הם יהיו שימושיים במיוחד אם אתה כותב סקריפטים באש.עיין בפרק I / O Redirection במדריך Advanced Bash-Scripting לקבלת מידע מפורט יותר.