代码应该花费一个小时作为输入,然后说早上好,下午好或晚上好。 当代码以12运行时,它表示if语句语法错误,但它与0一起工作正常。
#!/bin/csh
#
# Time of day greeting
#
# usage: greet [hour between 0-23]
#
if ($#argv == 0) then
set hour = 'date +%H'
else
set hour = $argv[1]
endif
#
if ($hour < 12) then
echo "Good Morning\!"
else
if (hour < 18) then
echo "Good Afternoon\!"
else
echo "Good Evening\!"
endif
endif
#
exit 0
#
答案 0 :(得分:1)
您的第二个if
声明在hour
前面没有美元符号。