shell脚本如何用for循环做递减

在网上查找了各种shell的for循环,全是递增,一个递减的都没有,奇了个怪。

for((i=10;i>=1;i--))
do
done
这种写法,我的shell不支持,所以请给出其他的for循环方法啊,比如seq可以做递增,那么如何做递减呢?
谁知道,麻烦告知,谢谢

用seq命令可以生成递减序列:

for  i  in $(seq 10 -1 1 )
do
    echo $i
done

seq命令说明:

基本用法

seq [选项]... 尾数

seq [选项]... 首数 尾数

seq [选项]... 首数 增量 尾数

以指定增量从首数开始打印数字到尾数。 

对于第三种模式,当首数大于尾数时,增量需要指定为负数。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-07
a="10 9 8 7 6 5 4 3 2 1" --- 可设置其他数字,此处仅举例

for b in ${a}
do
##代码
done追问

哥,我要是想100000000000000到1递减咋办?

追答

a=100000000000000

while(( ${a} >= 1))
do
echo ${a}
let "a --"
done

本回答被提问者和网友采纳
第2个回答  2015-09-27
  常用的两个结构:
1.
for i in $(seq 1 100); do
echo $i
done
2.
for (( i = 1 ; $i <= 100; i++ )) ;do
echo $i;
done
相似回答