hour_init=$((1));
min_init=$((30));
sec_init=$((00));
hour=$hour_init;
min=$min_init;
sec=$sec_init;
while [ $hour -gt 0];
while [ $min -gt 0 ];
while [$sec -gt 0];
do clear;
echo $sec | figlet;
sleep 1;
sec=$(($sec- 1));
done;
sec=$sec_init;
min=$(($min- 1));
done;
hour=$($hour- 1);
min=$min_init;
sec=$sec_init;
done;
我写这篇文章得到一小时:min:sec的计时器。但我不能!我是新手来编写脚本。谁能告诉我这里做错了什么?
答案 0 :(得分:3)
请注意[
之后和]
之前的空格,如果您最初将sec
设置为0,则不会循环(因为您的循环在sec
时退出非正面。另请注意hour=$(($hour- 1))
位:
hour_init=1
min_init=60
sec_init=60
hour=$hour_init
min=30
sec=0
while [ $hour -gt 0 ]
do
while [ $min -gt 0 ]; do
while [ $sec -gt 0 ]
do clear
echo "$hour:$min:$sec"
sleep 1
sec=$(($sec- 1))
done
sec=$sec_init
min=$(($min- 1))
done
hour=$(($hour- 1))
min=$min_init
sec=$sec_init
done