$ SAT=$(date -dsaturday +%Y-%m-%d)
$ SUN=$(date -dsunday +%Y-%m-%d)
$
$ echo $SAT
2016-04-09
$ echo $SUN
2016-04-10
$
私は土曜日と日曜日の次の日付をリストする方法を知っています。
次の6ヶ月間、次の土曜日と日曜日の両方をリストする方法は?
Ubuntuでbashを使用しています。
ベストアンサー1
土曜日および/または日曜日の最初の開始日を決定したら、相対日付を使用するbashスクリプトのループを使用してこれを実行できます。
#!/bin/bash
SAT=$(date -dsaturday +%Y-%m-%d)
SUN=$(date -dsunday +%Y-%m-%d)
# 365 days/year / 2 ~= 182 days
ENDSAT=$(date -d "$SAT + 182 days" +"%Y-%m-%d")
ENDSUN=$(date -d "$SUN + 182 days" +"%Y-%m-%d")
echo $SAT
echo $SUN
until [ "$SUN" == "$ENDSUN" ]; do
SAT=$(date -d "$SAT + 7 days" +%Y-%m-%d)
SUN=$(date -d "$SUN + 7 days" +%Y-%m-%d)
echo $SAT
echo $SUN
done
初期設定では「+6ヶ月」は使用しません。月ごとに日数が異なるため、作業日が多少異なる場合があります。