Unixで毎月5日目と6日目をフェッチすることはできますか?Unixで毎月5日と6日をフェッチする方法は?
私はこれを試してみたが、それは私に所望の出力与えるものではありません:
echo $((($(date +%-d)-1)/5))
Unixで毎月5日目と6日目をフェッチすることはできますか?Unixで毎月5日と6日をフェッチする方法は?
私はこれを試してみたが、それは私に所望の出力与えるものではありません:
echo $((($(date +%-d)-1)/5))
これがあなたが探しているものであるかどうかわかりません:私はあなたが月の5日目(6日目)をいつでも取得したいと思っています。その場合は、現在の日付を使用して、現在の月の5日目を以下のように取得することができます。
dd=`date '+%d'`
if(($dd > 5)); then
((diff = dd - 5))
myDate=`date -d "-$diff days"`
else
((diff = 5 - dd))
myDate=`date -d "+$diff days"`
fi
echo $myDate
6日目にも同様にすることができます。上記のコードはLinuxディストリビューションで動作するはずです。
使用この:
for month in {1..12}; do date -d "$month/5/2017" +"%c - is a %A"; done
出力:6日のために
Thu 05 Jan 2017 12:00:00 AM CET - is a Thursday
Sun 05 Feb 2017 12:00:00 AM CET - is a Sunday
Sun 05 Mar 2017 12:00:00 AM CET - is a Sunday
Wed 05 Apr 2017 12:00:00 AM CEST - is a Wednesday
Fri 05 May 2017 12:00:00 AM CEST - is a Friday
Mon 05 Jun 2017 12:00:00 AM CEST - is a Monday
Wed 05 Jul 2017 12:00:00 AM CEST - is a Wednesday
Sat 05 Aug 2017 12:00:00 AM CEST - is a Saturday
Tue 05 Sep 2017 12:00:00 AM CEST - is a Tuesday
Thu 05 Oct 2017 12:00:00 AM CEST - is a Thursday
Sun 05 Nov 2017 12:00:00 AM CET - is a Sunday
Tue 05 Dec 2017 12:00:00 AM CET - is a Tuesday
をそれは同じように行われます。