循环体

blob.png

blob.png

for 变量名in 列表;do

循环体

done

执行机制:

依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束

列表生成方式:

(1) 直接给出列表

(2) 整数列表:

(a) {start..end}

(b) $(seq[start [step]] end)

(3) 返回列表的命令

        $(COMMAND)

(4) 使用glob,如:*.sh

 

blob.png

blob.png

(5) 变量引用;

$@, $*

blob.png

blob.png

blob.png

练习题   for 实现

1、判断/var/目录下所有文件的类型

blob.pngblob.png

2、添加10个用户user1-user10,密码同用户名

blob.pngblob.png删除上用户循环体

blob.png

3、/etc/rc.d/rc3.d目录下分别有多个以K开头和以S开头的文件;分别读取每个文件,以K开头的文件输出为文件加stop,以S开头的文件输出为文件名加start;

“K34filename stop”

“S66filename start”

blob.png

4、写一个脚本,提示输入正整数n的值,计算1+2+3+…n的总和

blob.png判断整数

blob.png

5、写一个脚本,提示请输入网络地址,如192.168.0.0,判断输入的网段中主机在线状态

6、打印九九乘法表

blob.png

blob.png

blob.png

while CONDITION; do

循环体

done

CONDITION:循环控制条件;进入循环之前,先做一次判断;每一次循环之后会再次做判断;条件为“true”,则执行一次循环;直到条件测试状态为“false”终止循环

因此:CONDTION一般应该有循环控制变量;而此变量的值会在循环体不断地被修正

进入条件:CONDITION为true;

退出条件:CONDITION为false

blob.png

1、求100以内所有正整数之和

blob.png

2、通过ping命令探测172.16.250.1-254范围内的所有主机的在线状态,统计在线主机和离线主机各多少。

blob.png

3、打印九九乘法表

blob.png

4、利用变量RANDOM生成10个随机数字,输出这个10数字,并显示其中的最大者和最小者

blob.png

blob.png

blob.png

blob.png

5、打印国际象棋棋盘

blob.png

until CONDITION; do

循环体

done

进入条件:CONDITION 为false

退出条件:CONDITION 为true

blob.png

blob.png

用于循环体中

continue [N]:提前结束第N层的本轮循环,而直接进入下一轮判断;最内层为第1层

while CONDTIITON1; do

CMD1

if CONDITION2; then

continue

fi

CMDn

done

blob.png

blob.png

blob.png

用于循环体中

break [N]:提前结束第N层循环,最内层为第1层

while CONDTIITON1; do

CMD1

if CONDITION2; then

break

fi

CMDn

done

blob.png

blob.png

while true; do

循环体

done

until false; do

循环体

Done

原创文章,作者:Nicolas ZhaoIV,如若转载,请注明出处:http://www.178linux.com/36313

(0)
Nicolas ZhaoIVNicolas ZhaoIV
上一篇 2016-08-21
下一篇 2016-08-21

相关推荐

  • selinux介绍

    本章内容 SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助 SELinux介绍 SELinux: Secure Enhanced Linux,是美国国家安全局「NSA=The National Security Agency」和SCC(Secure Computing Corporat…

    Linux干货 2016-09-19
  • 马哥教育网络班20期+第2周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 文件管理命令:ls、cd、pwd、mkdir、rmdir、cp、rm.、mv、touch、cat、more、less、head、tail 1)ls命令:显示目录文件   -a 显示所有文件,包括隐藏文件  ~]# ls -a /etc.  &n…

    Linux干货 2016-06-23
  • shell脚本编程2

    shell脚本编程2   今天继续学习了shell脚本编程,续之前写的脚本编程1。上次主要学了编程的基础,脚本格式,变量类型及变量的使用,条件测试,数字运算并且进行了部分练习,因为这部分逻辑思维能力要求不是很高,因此记忆起来难度不是特别大。   从今天开始便进入了流程控制以及函数、数组、高级字符串操作、高级变量等内容的学习,总体来说难度和…

    Linux干货 2016-08-16
  • Linux 文 本 处 理 工 具

    Linux 文 本 处 理 工 具 一.学习大纲: ◎各种文本工具来查看、分析、统计文本文件 文件内容查看工具:cat, tac,rev,more,less 文件截取:head和tail 按列抽取:cut,paste 分析文本的工具:wc , sort , uniq,diff和patch 命令使用练习题 ◎文本过滤与处理工具: grep与正则表达式…

    Linux干货 2016-08-05
  • 重定向和管道

     重定向    程序:指令+数据    读入数据:Input    输出数据:Output  linux给程序提供三种I/O设备    标准输入(stdin)-0 默认接受来自键盘的输入    标准输出(stdinout)-1默认输出到终端…

    Linux干货 2016-08-10
  • AWK基础用法

    AWK: print 例子:给没个/etc/passwd下的用户都打招呼hello 答案: awk ‘{print “hello:”$1}’ /etc/passwd 内建变量 FS : 输入分隔符 OFS: 输出分隔符 RS : 行输入分隔符 ORS: 行输出分割符 NF : 字段数 NR : 行号数 FNR: 每个文件的行号数 ARGC: 参数个数 ARG…

    Linux干货 2017-05-22