1.动态的值如何加入单引号
## hour添加单引号
hour=''${hour}''
用单引号讲动态的值用单引号引起来。
2.日期当前时间和传入参数的
#不动态,只会是当前时间
#yesterday=$(date -d -1day +"%Y-%m-%d" )
#lastweek=$(date -d -7day +"%Y-%m-%d" )
#业务时间动态动态,其中today=$1可以自己传参
yesterday=`date -d "${today} -1 day" +"%Y-%m-%d"`
lastweek=`date -d "${today} -7 day" +"%Y-%m-%d"`
3.数组遍历
array=(
00:00
00:30
01:00
01:30
)
if [[ "${array[@]}" =~ "${hour}" ]]; then
echo "'${hour}' exists"
today=`date -d "${today} -1 day" +"%Y-%m-%d"`
elif [[ ! "${array[@]}" =~ "${hour}" ]]; then
echo "'${hour}' not exists"
fi
4.动态获取周几?
week=`date -d "$today" +%w`
周日为0其余跟周几是一致
date -d "last monday" +%Y-%m-%d 这个获取的不是上周一,而是最近的一个周一。
5.if判断
if [ "$week" -eq "0" ];then
lastmonday=`date -d "${today} -13 day" +"%Y-%m-%d"`
fi;
6.clickhouse如果用if(isNull(a=0,0,a))等判断需要放在case when then 的前面,不然sql报错,个人见解。