所有的笔记只记录一些例子,根据例子解释一些出现的语法,不介绍具体的语法

2015-07-01 21:58:33 星期三

for循环

  • 用例一
    用for循环在家目录下创建aaa1-aaa10,然后在aaa1-aaa10创建bbb1-bbb10的目录
    1. #!/bin/bash
    2. for k in $(seq 1 10)
    3. do
    4.    mkdir /home/hxy/aaa${k}
    5. cd /home/hxy/aaa${k}   
    6.    for i in $(seq 1 10)
    7. do
    8. mkdir bbb${i}
    9. done
    10. done

    seq 用于产生从某个数到另外一个数之间的所有整数

用例二

  1. #!/bin/bash
  2. DIR="/var"
  3. cd $DIR
  4. for k in $(ls $DIR)
  5. do
  6.    [ -d $k ]&& du -sh $k
  7. done

-d 判断是否为目录

或者

  1. vi getdu.sh
  2. #!/bin/bash
  3. DIR=$1
  4. if [ -d $DIR ];then
  5. cd $DIR
  6.  for k in $(ls $DIR)
  7.  do
  8.     [ -d $k ]&& du -sh $k
  9.  done
  10. else 
  11.   echo $1" is not a directory!!"
  12. fi

使用,加入一个判断

  1. [root@oracle ~]# sh getdu.sh a
  2. a is not a directory!!
  1. [root@oracle ~]# sh getdu.sh /var
  2. 4.0K account
  3. 15M cache
  4. 4.0K crash
  5. 4.0K cvs
  6. 12K db
  7. 8.0K empty
  8. 8.0K ftp
  9. 4.0K games
  10. 4.0K gdm
  11. 64M lib
  12. 4.0K local
  13. 20K lock
  14. 7.3M log
  15. 0 mail
  16. 4.0K nis
  17. 4.0K opt
  18. 4.0K preserve
  19. 284K run
  20. 1.8M spool
  21. 8.0K tmp
  22. 12K yp

while循环

用例一

  1. [root@oracle ~]# cat a.txt
  2. aaa
  3. bbb
  4. ccc
  5. ddd
  6. [root@oracle ~]# cat while.sh
  7. #!/bin/bash
  8. while read line
  9. do
  10. echo ${line}
  11. done < a.txt

输出

  1. [root@oracle ~]# sh while.sh
  2. aaa
  3. bbb
  4. ccc
  5. ddd

用例二

  1. [root@oracle ~]# cat sum.sh
  2. declare -i i=1
  3. declare -i sum=0
  4. while ((i<=10))
  5. do
  6. let sum=sum+i
  7. let ++i
  8. done
  9. echo $sum
  10. [root@oracle ~]# sh sum.sh
  11. 55

declare -i 声明i和sum为整数类型

until循环

  1. [root@oracle ~]# cat sum.sh
  2. declare -i i=1
  3. declare -i sum=0
  4. until ((i>10))
  5. do
  6. let sum=sum+i
  7. let ++i
  8. done
  9. echo $sum
  10. [root@oracle ~]# sh sum.sh
  11. 55

until条件为假才执行

shell循环语句的更多相关文章

  1. Shell循环语句for、while、until

    Shell循环语句for.while.until            一.条件测试            二.删除字符            三.循环语句              示例1     ...

  2. shell循环语句until

    until 条件 do 执行命令 done until 循环与 while 循环在处理方式上刚好相反. 当条件成立的时候,停止循环.

  3. shell循环语句for

    1.方式1 for i in {list[0]} {list[1]} .. do 执行命令 done 2.方式2(三要素循环) for (( 初始值; 判断值; 步长; )) do 执行命令 done

  4. shell 循环语句

    1.while 2.for 3.until 4.select while #!/bin/bash # 显示一系列数字 count=1 while [ $count -le 6 ]; do echo $ ...

  5. shell循环语句while

    格式1: while 条件 do 执行命令 done 格式2: while 条件;do 命令 done 例子: while [ 1 -eq 1 ];do echo "这一步需要先修改/dat ...

  6. shell 学习笔记9-while/until循环语句

    一.while循环语句 1.循环语句 循环愈久就是重复执行一条指令或一组执行,知道条件不在满足时停止,shell循环语句包括,while.until.for.select语句 2.while循环 主要 ...

  7. shell编程系列18--文本处理三剑客之awk动作中的条件及if/while/do while/for循环语句

    shell编程系列18--文本处理三剑客之awk动作中的条件及if/while/do while/for循环语句条件语句 if(条件表达式) 动作1 else if(条件表达式) 动作2 else 动 ...

  8. shell编程基础(二): shell脚本语法之分支语句和循环语句

    一.分支语句 1.条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Status为1(注意与 ...

  9. Shell脚本应用(for、while循环语句和case分支语句)

    1.for:读取不同的变量值,逐个执行同一组命令,直到取值完毕退出,变量值以空格分隔 语法: for  变量值  in  取值列表 do 命令序列 done 2.while:重复测试某个条件,成立则执 ...

随机推荐

  1. R 查看函数源代码

    1:输入函数名. 2:methods( ),例如methods(quantile). 3:针对方法2得到的带*的,例stats:::quantile.default.

  2. Oracle 的字符集与乱码

    字符集问题一直叫人头疼,究其原因还是不能完全明白其运作原理. 在整个运行环节中,字符集在3个环节中发挥作用: 1.软件在操作系统上运作时的对用户的显示,此时采用操作系统定义的字符集进行显示.我们在系统 ...

  3. UNIX下的LD_PRELOAD环境变量

    UNIX下的LD_PRELOAD环境变量 也许这个话题并不新鲜,因为LD_PRELOAD所产生的问题由来已久.不过,在这里,我还是想讨论一下这个环境变量.因为这个环境变量所带来的安全问题非常严重,值得 ...

  4. Lua IDE

    http://blog.csdn.net/visualcatsharp/article/details/37653107

  5. xss之渗透测试

    跨站脚本攻击:cross site script execution(通常简写为xss,因css与层叠样式表同名,故改为xss),是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用 ...

  6. ORA-00600: 内部错误代码

    运行时报ORA-00600: 内部错误代码, 参数:[qcsgpvc3],[],[],[],[],[],[],[],[],[],[],[]    ,上网搜了但大多数都不行.无心插柳柳成荫,就在无奈想要 ...

  7. python3.5.2本地环境搭建

    OS:win7 Download URL:https://www.python.org/downloads/release/python-352/ install 下载二进制安装文件之后,点击安装,一 ...

  8. [原创]Matlab2016b打包为C++的lib文件

    这几天在研究如何将Matlab的程序导入到C++进行调用. 由于需要使用到不少Matlab函数,所以之前就有些担心这些函数在导出后是否能够继续使用.不过之后觉得既然已经导出成了一个单独文件,相关运算应 ...

  9. 记一次Suse下的Django环境配置——第一弹

    一.安装Python 由于原有Suse自带的Python版本只有2.4,因此首先需要安装Python的高版本,在这里我选择使用Python2.7.9.PS:之前选择使用2.7.11版本,由于没有zli ...

  10. Linux收藏

    Unix目录结构的来历   vi 操作笔记  Linux下安装和配置JDK与Tomcat(升级版) Windows下 刷新本地DNS缓存:ipconfig /flushdns 深圳DNS: 202.9 ...