を使用して、date
曜日を1から7の整数に変換できます。たとえば、次のようになります。
$ date -d "Thursday" +%u
4
しかし、逆にしたい場合はどうすればいいですか?それはまるで、
$ date [options] [+format]
Thursday
日付が合っても構いませんので、他のプログラムをご利用ください。ここでは簡単に説明してください。
ベストアンサー1
次の日曜日の日付を取得し、N
日数を追加し、その特定の日付の日付名を印刷できます。
getdayname () {
nextplus=$(date -d "next Sunday +$1 days")
date -d "${nextplus}" '+%A'
}
getdayname 2
などを実行しますgetdayname 7
(家庭gnu date
)。
あるいは、単に配列を使用し、たとえばdate
使用しないでください。
getdayname () {
local days=( Sunday Monday Tuesday Wednesday Thursday Friday Saturday )
printf %s\\n ${days[$1]}
}
bash
/を使用しても(インデックスとして)ksh
必要です。printf %s\\n "${days[$1-1]}"
次から始まった0
)、分割+グローブを防ぐには引用符が必要です(でも機能しますyash
)。