লিনাক্স সিএলআই-তে, মাসের সপ্তাহের নম্বর পাওয়ার উপায় আছে? একটি সরল (লাইক date
) কমান্ড দিয়ে এটিকে পেতে আরও একটি উপায় থাকতে পারে ? ধরা যাক যে দিনটি 1 থেকে 7 প্রথম সপ্তাহ, 8 থেকে 14 দিনটি দ্বিতীয় সপ্তাহ, এবং আরও অনেক কিছু।
লিনাক্স সিএলআই-তে, মাসের সপ্তাহের নম্বর পাওয়ার উপায় আছে? একটি সরল (লাইক date
) কমান্ড দিয়ে এটিকে পেতে আরও একটি উপায় থাকতে পারে ? ধরা যাক যে দিনটি 1 থেকে 7 প্রথম সপ্তাহ, 8 থেকে 14 দিনটি দ্বিতীয় সপ্তাহ, এবং আরও অনেক কিছু।
উত্তর:
date
তাই আপনি কিছু বহিরাগত গাণিতিক প্রয়োজন কমান্ড অভ্যন্তরীণভাবে করতে পারব না।
echo $((($(date +%-d)-1)/7+1))
সম্পাদনা:% এবং d এর মধ্যে একটি বিয়োগ চিহ্ন যুক্ত করা হয়েছে
আপনি এটি ব্যবহার করতে পারেন:
সোমবার প্রথম সপ্তাহের দিন
WEEKNUMBER=$(( 1 + $(date +%V) - $(date -d "$(date -d "-$(($(date +%d)-1)) days")" +%V) ))
রবিবার প্রথম সপ্তাহের ডেটি y
WEEKNUMBER=$(( 1 + $(date +%U) - $(date -d "$(date -d "-$(($(date +%d)-1)) days")" +%U) ))
ভিক্টর সানচেজের সমাধানটি সরলকরণ:
expr 1 + $(date +%V) - $(date +%V -d $(date +%Y-%m-01))
আপনি যদি রবিবার থেকে সপ্তাহ শুরু করতে চান তবে% V এর সাথে% U প্রতিস্থাপন করুন।
বিটিডব্লিউ: $ ((...)) এর পরিবর্তে এক্সপ্রেস ব্যবহার করতে হয়েছিল কারণ পরবর্তীকালে শীর্ষস্থানীয় শূন্যগুলির সাথে সংখ্যাগুলি পছন্দ হবে বলে মনে হয় না।
আপনি যদি আপনার সন্ধানে বাহ্যিক সরঞ্জামগুলি গ্রহণ করেন তবে তারিখের চেষ্টা করুন । এটি ঘটনা-মাসের তারিখগুলির মধ্যে ধারণা পেয়েছে, অর্থাৎ 27 এপ্রিল 2012 এপ্রিল 2012-এর চতুর্থ শুক্র, যা আপনার সপ্তাহের সংজ্ঞার সাথে সাদৃশ্যপূর্ণ। এই নম্বরটি ব্যবহার করতে:
dconv 2012-04-27 -f %c
=>
04
%c
(গণনা) এক মাসের মধ্যে উপস্থিতির জন্য ফর্ম্যাট নির্দিষ্টকরণকারী। বা এমনকি শীতল চেষ্টা করতে
dconv today -f '%cth %a in %b %Y'
=>
1st Wed in Sep 2012