shell脚本编程for循环求阶乘_Linux进阶之bash编程(流程控制-for循环)

bash脚本里定义后续命令执行日志输出路径

#!/bin/bash

logDir=`date +%F`

exec &>/tmp/logDir.log

//此次定义后续命令的执行输出日志路径

df -h

top

for循环

循环允许你重复一段代码固定次数,在循环代码执行期间,一个称为循环变量的特殊变量被赋予了不同的值;

for循环很适合处理命令行上的参数以及文件集,for结构的语法如下:

for name [in list]

do

statements

done

list为名称列表,如果in list被省略,列表默认为"$@",即命令行参数的引用列表。

3. 练习

例如:获取执行脚本附带的参数并输出

for.sh:#!/bin/bash

for fileDir in "$@"

do

echo  "$fileDir"

done

执行#bash for.sh /var /opt /tmp

/var

/opt

/tmp

输出1-n,n为执行脚本带入的参数

for2.sh:#!/bin/bash

for i in `seq $1`

do

echo "$i"

done

执行:#bash for2.sh  3

1

2

3

计算从1加到n为多少,n为你执行该脚本时带入的参数?

vi for3.sh

#!/bin/bashfor

for i in `seq $1`

do

let  sum+=$i

done

echo "sum=$sum"

执行:#bash for3.sh 100

sum=50505秒倒计时daojishi.sh

#!/bin/bash

n=5

for i in `seq 5`

do

echo "倒计时:$n"

let  n--

sleep 1

done

执行:#bash daojishi.sh

倒计时:5

倒计时:4

倒计时:3

倒计时:2

倒计时:1阶乘算法,10的阶乘结果?

[craft@vp143 test]$ vi jiecheng.sh

#!/bin/bash

n=10

tmp=1

for

i in `seq $n`

do

let tmp=`expr $i \* $tmp`

echo

"$tmp"

done

执行:[craft@vp143

test]$ bash -i jiecheng.sh

1

2

6

24

120

720

5040

40320

362880

3628800

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值