Shell中有关问题now变量初始化对不对

Shell中问题now变量初始化对不对
#!/bin/sh

now='date'+'%H'

if [${now} -lt 12]

then

greeting="Good morning."

elif [${now} -lt 18]

then

greeting="afternoon."

else

greeting="evening."

fi

echo "$greeting"

exit 0


------解决方案--------------------
应该是now='date+%y-%m-%d-%H'这样的。
------解决方案--------------------
now=$(date +%H)


另外,if以及elif判断时,[前后要有空格,]也一样
------解决方案--------------------
now=`date +%H`

注意`不是单引号,另外注意+前面有空格


------解决方案--------------------
+1 Tab键上面的
探讨
now=`date +%H`

注意`不是单引号,另外注意+前面有空格