Date
使用變數獲取下一個工作日
我想從腳本生成的日期中提取下一個工作日並分配給變數
last_day
假設變數
last_day
具有last_day=20190426
我想獲得的next_day=2019-04-29
值,如果值為last_day=2019-04-17
thennext_day=2019-04-18
。場景是如果 last_day 是 friday 列印 next_day 為 monday else 列印次日日期。不知道如何使以下命令與變數一起使用。
date +%Y-%m-%d -d "+$(( ( $(date +%w)==5 )?3:1 )) days"
試過這個,但它不工作。
next_day=$(date +%Y-%m-%d -d "+$(( ( $(${last_day} +%w)==5 )?3:1 )) days")
試試這個,
last_day=20190426 date -d "$last_day +$( if [ `date -d $last_day +%w` == 5 ]; then echo 3; elif [ `date -d $last_day +%w` == 6 ]; then echo 2; else echo 1; fi ) days" +"%Y%m%d"
輸入可以是任何一天。所以
- 如果輸入落在一周中的第 5 天(星期五)將加 3。
- 如果輸入落在一周中的第 6 天(星期六)將加 2。
- 否則為一周中的所有其他日子加 1