Bash:
การคำนวณวันที่ในอนาคตหรืออดีต
วิธีการ:
ใน Bash, คุณสามารถใช้คำสั่ง date
ร่วมกับธง -d
เพื่อจัดการกับวันที่ นี่คือวิธีการ:
# วันที่ปัจจุบัน
date
# วันที่ในอนาคต: 10 วันจากตอนนี้
date -d "+10 days"
# วันที่ในอดีต: 10 วันที่ผ่านมา
date -d "-10 days"
# วันที่ในอนาคตเฉพาะ: เพิ่มสัปดาห์, เดือน, ปี
date -d "+1 month"
date -d "+2 weeks"
date -d "+1 year"
# ตัวอย่างผลลัพธ์สำหรับวันที่ในอนาคต
Mon 31 Jan 2023 12:34:56 PM PST
ลงลึก
การจัดการวันที่เป็นความต้องการทั่วไปในการเขียนสคริปต์และการเขียนโปรแกรม ในอดีตงานนี้ค่อนข้างยุ่งยากและมีโอกาสผิดพลาดสูงเมื่อต้องจัดการกับปีอธิกสุรทิน, เขตเวลา ฯลฯ ในระบบที่คล้าย Unix, คำสั่ง date
ได้พัฒนามาเพื่อรวมตัวเลือกสำหรับการคำนวณวันที่ได้อย่างง่ายดาย
ทางเลือกอื่น ๆ รวมถึงการใช้เลขคณิตของ shell หรือเครื่องมือภายนอกเช่น awk
หรือ perl
สำหรับตรรกะการวันที่ที่ซับซ้อนมากขึ้น แต่คำสั่ง date
ยังคงเป็นวิธีที่ง่ายและตรงไปตรงมาที่สุดสำหรับการดำเนินการพื้นฐาน ภายใต้เครื่องมือ, คำสั่ง date
ใช้ไลบรารีระบบในการจัดการความซับซ้อนของการคำนวณเวลา, ทำให้ผู้ใช้ไม่ต้องเจอกับความซับซ้อนนี้
ดูเพิ่มเติม
- คู่มือ GNU Coreutils สำหรับ Date: https://www.gnu.org/software/coreutils/manual/html_node/date-invocation.html
- ตัวอย่างเพิ่มเติมและกรณีการใช้งาน: https://www.cyberciti.biz/faq/linux-unix-formatting-dates-for-display/
- คู่มือการเขียนสคริปต์ขั้นสูงใน Bash: https://tldp.org/LDP/abs/html/abs-guide.html