$ cat fromhere.sh
#!/bin/bash
FROMHERE=10
for i in $(seq $FROMHERE 1)
do
echo $i
done
$ sh fromhere.sh
$
它爲什麼不起作用?
我找不到任何搜索谷歌降序循環的例子,甚至沒有變量。爲什麼?
降序循環變量bash
$ cat fromhere.sh
#!/bin/bash
FROMHERE=10
for i in $(seq $FROMHERE 1)
do
echo $i
done
$ sh fromhere.sh
$
它爲什麼不起作用?
我找不到任何搜索谷歌降序循環的例子,甚至沒有變量。爲什麼?
降序循環變量bash
應指定與NGF的增量:
seq $FROMHERE -1 1
你可能會喜歡的,而不是產卵外部序列猛砸內置殼牌算術:
i=10
while ((i >= 1)); do
echo $((i--))
done
Bash有一個for
循環語法以此目的。沒有必要使用外部seq
實用程序。
#!/bin/bash
FROMHERE=10
for ((i=FROMHERE; i>=1; i--))
do
echo $i
done
環向下與(停止播放)
for ((q=500;q>0;q--));do echo $q ---\>\ `date +%H:%M:%S`;sleep 1;done && pkill mplayer
500 ---> 18:04:02
499 ---> 18:04:03
498 ---> 18:04:04
497 ---> 18:04:05
496 ---> 18:04:06
495 ---> 18:04:07
...
...
...
5 ---> 18:12:20
4 ---> 18:12:21
3 ---> 18:12:22
2 ---> 18:12:23
1 ---> 18:12:24
圖案:
for ((...)); do ... ; done
例如
for ((i=10;i>=0;i--)); do echo $i ; done
結果
10
9
8
7
6
5
4
3
2
1
0
與同時: 第一步
AAA=10
然後
while ((AAA>=0));do echo $((AAA--));sleep 1;done
或: 「AAA--」 到而
while (($((AAA-- >= 0))));do echo $AAA;sleep 1;done
「睡眠1」是不需要
他可以用{} 10..1太 – marco 2011-01-13 11:48:36