Fish Shell:
פרסום תאריך ממחרוזת
איך לעשות:
ב-Fish Shell, אין לך פקודות מובנות במיוחד שתוכננו לניתוח תאריכים ממחרוזות. במקום זאת, אתה מסתמך על כלים חיצוניים כמו date
(זמינים ב-Linux וב-macOS) או מנצל כלים צד שלישי פופולריים כמו GNU date
לניתוח מורכב יותר. הנה איך לגשת לזה:
שימוש ב-date
עם Fish:
לניתוח מחרוזת תאריך בפורמט “YYYY-MM-DD”, תוכל להשתמש בפקודת date
עם האופציה -d
(או --date
עבור GNU date) אחריה מופיעה המחרוזת. האופציה +
משמשת לפורמט הפלט.
set date_str "2023-04-01"
date -d $date_str +"%A, %d %B %Y"
# פלט: Saturday, 01 April 2023
עבור macOS (שדורשת פורמט שונה עבור הדגלים -j
ו-f
):
set date_str "2023-04-01"
date -j -f "%Y-%m-%d" $date_str +"%A, %d %B %Y"
# פלט: Saturday, 01 April 2023
שימוש ב-GNU date
לניתוח מורכב:
GNU date
היא יותר גמישה עם פורמטי מחרוזות. היא יכולה לזהות באופן אוטומטי פורמטים רבים ונפוצים של מחרוזות תאריך בלי לציין במפורש את פורמט הקלט:
set complex_date_str "April 1, 2023 14:00"
date -d "$complex_date_str" '+%Y-%m-%d %H:%M:%S'
# פלט: 2023-04-01 14:00:00
עם זאת, כשעובדים עם מחרוזות תאריך שאולי לא יזוהו באופן אוטומטי או כשדרוש שליטה מדויקת על פורמט הקלט, הציון של פורמט הקלט עם GNU date
אינו נתמך באופן ישיר. במקרים כאלו, שקול עיבוד מוקדם של המחרוזת או שימוש בכלי אחר שתוכנן לשגרות ניתוח תאריכים מורכבות יותר.