Bash:
दो तारीखों की तुलना
How to: (कैसे करें:)
# तारीखें स्ट्रिंग्स के रूप में
date1="2023-03-01"
date2="2023-03-10"
# उन्हें सेकंड्स में कन्वर्ट करें
sec1=$(date -d "$date1" +%s)
sec2=$(date -d "$date2" +%s)
# तुलना करें
if [ $sec1 -eq $sec2 ]; then
echo "तारीखें बराबर हैं।"
elif [ $sec1 -lt $sec2 ]; then
echo "$date1 $date2 से पहले की है।"
else
echo "$date1 $date2 के बाद की है।"
fi
सैंपल आउटपुट:
2023-03-01 2023-03-10 से पहले की है।
Deep Dive (गहराई में जानकारी):
तारीखों की तुलना UNIX और LINUX सिस्टम में बहुत पुरानी बात है, date
कमांड का इस्तेमाल 1970 से हो रहा है। date
कमांड से हम सेकंड्स में तारीखों को बदलते हैं, क्योंकि यह UNIX एपॉक टाइम स्टैंडर्ड का इस्तेमाल करता है। इसके अलावा, dateutils
, GNU coreutils
जैसे टूल्स भी तारीखों की तुलना में मदद करते हैं। बैश में, हम ऑपरेटर्स -eq
, -lt
, और -gt
का इस्तेमाल करके सीधे सेकंड्स में कन्वर्टेड तारीखों की तुलना कर सकते हैं।
See Also (और भी देखें):
- बैश मैन पेज: https://www.gnu.org/software/bash/manual/
- GNU coreutils: https://www.gnu.org/software/coreutils/
- dateutils डॉक्यूमेंटेशन: http://www.fresse.org/dateutils/