כיצד לכתוב לקובץ ב- Bash

How Write File Bash



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

ישנן מספר דרכים לקרוא ולכתוב קובץ ב- bash. הדרך הפשוטה ביותר היא שימוש באופרטורים> ו >>.







  • > האופרטור יחליף את הנתונים הקיימים
  • >> המפעיל יצרף נתונים

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



נתונים> שם קובץ
נתונים >> שם קובץ

הבה נבין את הליך הכתיבה לקובץ עם דוגמה:



כיצד לכתוב קובץ באמצעות אופרטורי ניתוב מחדש

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





שמור את קובץ הטקסט.



הקלד את הפקודה המופיעה להלן במסוף:

$ echo החלפת הטקסט הקיים בקובץ> testfile.txt

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

$ set –o noclobber
$ echo החלפת הטקסט הקיים בקובץ> testfile.txt

אבל אם אתה רוצה לעקוף נוקלובר אז השתמש ב > | מפעיל במקום > :

$ echo החלפת הטקסט הקיים בקובץ> | testfile.txt

או שאתה יכול פשוט להשבית את ה- Noclobber:

$ set + או noclobber

אך פקודה זו תסיר הגנה מכל הקבצים.

הפלט לעיל מציין שהטקסט הקיים הוחלף. עכשיו, בואו נשתמש ב- >> מַפעִיל:

$ echo הוספת טקסט לקובץ הטקסט הקיים >> testfile.txt

זרק אינו תמיד אידיאלי לשימוש מכיוון שאינך יכול לעצב טקסט באמצעותו, לכן השתמש ב- printf במקום הד כדי לעצב את הטקסט כפי שמוצג בפקודה הבאה:

$ printf ברוכים הבאים n זהו קובץ טקסט חדש. > newtestfile.txt

הבה נבין את הרעיון באמצעות דוגמא לתסריט bash. פתח את Vim על ידי הקלדת vim במסוף. אם אין לך את עורך Vim במכשיר שלך, התקן אותו באמצעות:

$ sudo apt להתקין vim

הקלד את התסריט:

#! /bin/bash
הד הזן את שמך
לקרוא שם
הד $ name> data_dir.txt
הד הזן את גילך
לקרוא גיל
הד $ גיל >> data_dir.txt
חתול data_dir.txt

ה חתול הפקודה משמשת ליצירת ועריכה של הקבצים. שמור את הסקריפט לעיל ב- Vim על ידי החלפת מצב לאחר לחיצה על יציאה מקש ולאחר מכן הקלד : ב- myscript.sh . פתח את הטרמינל והפעל את הקוד:

כיצד לכתוב קובץ באמצעות Heredoc

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

פקודה<<[-] Delimiter
.
טקסט/פקודות
.

מפריד

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

#! /bin/bash

חתול<< TEXTFILE
זהו קובץ טקסט.
קובץ זה נוצר באמצעות heredoc.
טקסט

פקודת cat script לעיל יוצרת קובץ טקסט בשם TEXTFILE וכתיבת טקסט לקובץ שזה עתה נוצר. כעת שמור את הקובץ בשם myscript.sh . הפעל מסוף והפעל את הסקריפט.

כיצד לכתוב קובץ באמצעות הפקודה Tee

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

הד הד זהו טקסט כלשהו | tee textfile.txt

לצירוף שימוש –א:

הד הד זהו טקסט נוסף | טי –קובץ טקסט

כדי לכתוב מספר שורות, השתמש ב:

הד הד הוספת טקסט למספר קבצים | tee textfile1.txt textfile2.txt textfile3.txt

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

סיכום

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