Chinaunix首页 | 论坛 | 博客
  • 博客访问: 376251
  • 博文数量: 96
  • 博客积分: 647
  • 博客等级: 上士
  • 技术积分: 490
  • 用 户 组: 普通用户
  • 注册时间: 2012-09-29 22:15
文章分类
文章存档

2015年(1)

2014年(10)

2013年(26)

2012年(59)

我的朋友

分类: LINUX

2012-09-30 15:40:28

1.if then else 语句
if 条件1             #如果条件1为真
then               #那么
    command1           #执行命令1
elif 条件2           # 如果条件2为真
then               #那么
    command2           # 执行命令2
else               #如果条件1和条件2都不成立
    command3 执行命令3
fi                 #完成(if 语句一定要以fi结束)
举例说明:
  if [ "13" -lt "11"]   #如果13小于11
  then             #那么
      echo "13<11"     #输出"13<11"
  elif["13" -lt "12"]   #如果13小于12
  then             # 那么
      echo "13<12"     #输出"13<12"
  else             #否则
      echo "13>=12"     #输出"13>=12"
2.case语句
case 值 in
  模式1)       #如果模式1匹配
    命令1       #执行命令1
      ;;
  模式2)       #如果模式2匹配
      命令2     #执行命令2
      ;
  *)         #如果以上模式都不匹配
      命令3     #执行命令3
      ;
  esac         #结束case语句
  case取值后面必须为单词in,每一模式必须以右括号结束。取值可以为变量或常数。匹配发现取值符合某一模式后,其间所有命令开始执行直至;;。模式匹配符号*表示匹配任意字符。[。。]表示类或者范围中的任意字符。
举例说明:
  case $A in
    1)            #如果A的值为1
    echo "A =1"     #输出“A=1”
    ;
    2)             #如果A的值为2
      echo "A=2"     #输出“A=2”
      ;
      [34])         #如果A的值为3或4
      echo "A=3|4"   #输出“A=3|4”
      ;
      esac         #结束
3.for循环
    for 变量名 in 列表
    do 
      命令1
      命令2
    done
  当变量值在列表里,for 循环即执行一次所有命令,使用变量名访问列表取值。命令可为任何有效的shell命令和语句。变量名为任何单词。in列表用法是可选的,如果不用它,for循环使用命令行的位置参数。in列表可以包含替换,字符串和文件名
  举例说明:
  for loop in 1 2 3 4 5         #在1 2 3 4 5列表中循环(5次)
  do                   #开始执行命令
    echo "hello"            #执行命令
  done                     #完成
  
  for loop in "one two three"     #当成一个元素只循环一次
  do 
    echo $loop
  done                     #输出 one two three 一行
  for loop in one two three       #三次循环
  do 
    echo $loop
  done
#输出 one
    two
    three
  列表可以是文件,如:for loop in `cat myfile`
4.until循环
  until 条件
  do
    命令1
    命令2
  done
  条件可为任何测试条件,若刚开始条件就为真,则不执行循环。
5.while循环
  while 命令
  do
      命令1
      命令2
      ......
  done
  举例说明:while read LINE 
          do 
            echo $LINE       #输出每行的信息
          done
6.break控制
  break [n]            #跳出n层循环
  举例说明:
  for loop in 1 2 3
done 
echo ${loop}
      for loop in one two three
      do 
      echo ${loop}
      //break /break 2 /continue #这三个命令替换测试
      echo ${loop}+
      done
      done
若为break,则输出 1 one 2 one 3 one
若为break 2 则输出 1 one 
若为continue 则输出1 one two three 2 one two three 3 one two three (每次输出都有换行)注意:echo ${loop}+没有执行
7.continue控制
  强制进入下一次循环 如上例子 

 
尊重原创!
阅读(1307) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~