להוציא לפועל מחרוזת
רמת קושי: #beginners
בעבר דיברנו על כלים שבאש מספקת לנו כדי לפרסר תוכן של משתנים בעת הקריאה אליהם היום נפגוש את bash Parameter transformation
להלן המחרוזת שלנו, כמו שרואים היא מכילה תווי בקרה, תווי שליטה בשורת הפקודה (Controlling the Prompt) ומחרוזת עטופה בגרש
אופרטור
#variable
#string
@bash_tips
רמת קושי: #beginners
בעבר דיברנו על כלים שבאש מספקת לנו כדי לפרסר תוכן של משתנים בעת הקריאה אליהם היום נפגוש את bash Parameter transformation
להלן המחרוזת שלנו, כמו שרואים היא מכילה תווי בקרה, תווי שליטה בשורת הפקודה (Controlling the Prompt) ומחרוזת עטופה בגרש
$ mystring="\narrow\nice\n\d\n\h\n'qoute'"
בעת שאנו משתמשים במחרוזת, באש מאפשרת לקחת את התוכן של המשתנה ולבחור באיזו וריאציה להציג את המחרוזת.אופרטור
Q
יציג את הטקסט ויעטוף אותו בגרש בודד כך שיוכל לשמש כקלט לכלי אחר, כולל החרגה של גרש בודד בטקסט עצמו$ echo "${mystring@Q}"
'\narrow\nice\n\d\n\h\n'\''qoute'\'''
אופרטור E
יציג את התוכן כולל תווי בקרה שנמצאים בטקסט$ echo "${mystring@E}"
arrow
ice
\d
\h
'qoute'
אופרטור P
יציג גם את תווי השליטה של שורת הפקודה, במקרה שלנו הם \d
ו \h
player@playground:~$ echo "${mystring@P}"
arrow
ice
Sat Aug 01
playground
'qoute'
דבר נחמד בהקשר הזה, בעת שימוש בסקריפט ניתן להעביר את כל הפרמטרים על ידי * או @ וכל פרמטר יעבור דרך האורפטור והטקסט יחולל בהתאם$ cat myfile.sh
echo "${*@P}"
$ bash myfile.sh "\d" "\h"
Sat Aug 01 playground
#parameter_transformation#variable
#string
@bash_tips