linux脚本打印循环次数,Shell脚本编程——for循环

1、本文是关于shell脚本编程中,对于for循环语句的使用总结。

2、语法格式

for 变量名 in 单词表

do

命令表

done

3、变量名:即为用户自定义变量

单词表:对变量赋值的表单

命令表:循环执行的shell命令

4、值得一问的是,for语句既然作为一个循环语句,那他是如何实现循环的呢?循环次数跟谁有关呢?很简单,循环的次数跟单词表中单词的个数相同!

5、如图1所示,此程序中单词表为:1 2 3 4。单词个数为四个,因此for语句循环执行4次。

04b5ffd29eb873f662ff5fcd0f103a78.png

6、知道了循环的次数与单词表的单词数相同,那每次循环for语句又是如何执行的呢?如图1所示的程序中:

a) 第三行程序:变量A依次被赋值为:1、2、3、4。

b) 因此第六行打印语句需执行四次:第一次打印1、第二次打印2、...第四次打印4。

c) $A:在这里$是获取变量A的值

总之:需要将单词表中的单词依次赋值给变量A,同时每赋值一次,都需执行一次do...done之间命令表的内容。

7、举个相似的例子,如图2所示。

a) $* :所有命令行的参数(除第一个:执行语句除外)。

b) 此程序中的单词表:hello 、world、huaqing、yuan、jian

c) 即for语句循环执行五次。执行结果如图所示。

c63ab4840ec423f308bec59f50aed7eb.png

8、再举个的例子,如图3所示。

a) 第3行 :建立一个名为dir的目录

b) 第4行 :将ls命令的执行结果提取出来赋值给list变量

c) list :在此程序中相当于单词表。list的单词数是由ls命令结果决定的,即当前路径下有多少个文件,list就有几个单词。

d) 第6行 :将list里的单词依次赋值给变量A,并执行do...done里的内容

e) 第8行 :判断是否为普通文件

f) 第10行:判断如果是普通文件则拷贝该文件到目录dir下(-f 判断普通文件)

g) 第11行:打印提示信息及已拷贝的文件名

ed1f644e4550c71841aec87b2ec89bda.png

9、执行结果如图4所示

命令一:$ ls

查看当前路径下所有文件及文件夹。

命令二:$ ./1.sh

执行1.sh脚本文件。会在终端上打印信息,即源文件11行的执行结果。

命令三:$ ls

执行结束后再次查看,会出现dir目录文件,即源文件3行的执行结果。

命令四:$ ls dir/

查看dir/目录下的文件,会显示已拷贝的普通文件,即源文件8、9、10行的执行结果。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值