关闭

shell入门之流程控制语句

标签: 流程控制linuxubuntu
1183人阅读 评论(0) 收藏 举报
分类:

1.case


脚本:

#!/bin/bash
#a test about case
case $1 in
   "lenve")  echo "input lenve";;
   "hello")  echo "input hello";;
   [a-zA-Z]) echo "It's a letter";;
   [0-9]) echo "It's a number";;
esac

执行效果:
这里写图片描述


2.while


脚本(注意=两端不能有空格):

#!/bin/bash
#a test about while
a=1
while [ $a -lt 10 ]
do
  echo "hello world!${a}"
  a=`expr $a + 1`
done

输出:
这里写图片描述


3.until循环类似于while循环,不同的是until是判断条件为false时才会执行


#!/bin/bash
#a test about until
a=11
until [ $a -lt 10 ]
do
  echo "hello world!${a}"
  a=`expr $a + 1`
done

这是一个无限死循环,输出从hello world11到hello world无穷大。


4.break与continue


continue脚本

#!/bin/bash
#a test about continue
a=1
while [ $a -lt 10 ]
do
  if [ $a -eq 5 ]
  then
   a=`expr $a + 1`
   continue
  else
  echo "hello world!${a}"
  fi
  a=`expr $a + 1`
done

结果:

这里写图片描述

break脚本:

#!/bin/bash
#a test about break
a=1
while [ $a -lt 10 ]
do
  if [ $a -eq 5 ]
  then
   a=`expr $a + 1`
   break
  else
  echo "hello world!${a}"
  fi
  a=`expr $a + 1`
done

运行结果:
这里写图片描述


5.shift指令,参数左移,每执行一次,参数序列顺次左移一个位置,$#的位置减1。此指令可用来分别处理每个参数,移出去的参数不可再用。


一个求和的例子:

#!/bin/bash
#a test about shift
if [ $# -le 0 ]
then
echo "there is no parameters"
exit 0
fi
sum=0
while [ $# -gt 0 ]
do
  sum=`expr $sum + $1`
  shift
done
echo $sum

千万注意=两端不能有空格
运行结果:
这里写图片描述

0
0
查看评论

linux——shell流程控制

每种语言都有自己的流程控制,判断语句、循环语句。shell和他们一样,if判断、for、while循环等。 if判断:          if 判断条件      ...
  • u012201343
  • u012201343
  • 2015-09-02 22:14
  • 517

Linux Shell 流程控制语句

* 本文主要介绍一些Linux Shell 常用的流程控制语句*
  • jing_EVA
  • jing_EVA
  • 2015-07-15 14:27
  • 451

T-SQL之流程控制语句(1)

批处理:     一个批处理段是由一个或者多个语句组成的一个批处理,之所以叫批处理是因为所有语句一次性被提交到一个SQL实例。     批处理是分批提交到SQL Server示例,因此在不同的批处理里局部变量不可访问。    在不同批处理中,流程控制语句不能跨批处理。    如果想让多个...
  • qq_36456952
  • qq_36456952
  • 2017-02-21 16:28
  • 621

shell流程控制语句

主要的流程控制语句 1、if …;then do 2、while…;do done 3、for …;do done    1、if …;then do #!/bin/bash #初始设置 a=1 b=2 if [ "$a" ="...
  • Angelahhj
  • Angelahhj
  • 2015-08-02 11:11
  • 421

Java中的流程控制语句

流程控制语句,顾名思义,就是控制程序走向的语句,其中包括条件语句,分支语句和循环语句。 条件语句:if条件句有三种形式 1:if(表达式){方法体} 2:if(表达式){方法体} else {方法体} 3:if(表达式){方法体} else if(表达式){方法体} else{方法体} 表达式的...
  • heyJJ1226
  • heyJJ1226
  • 2015-10-22 15:44
  • 1905

Shell流程控制语句

和其他高级语言一样,Shell提供了用来控制程序流程的命令,包括条件分支和循环结构,用户可以用这些命令创建非常复杂的程序 与传统语言不同的是,Shell用于指定条件值的不是布尔运算式,而是,命令和字符串。        linux sh...
  • xiongyaoqiongyao
  • xiongyaoqiongyao
  • 2012-12-16 14:14
  • 955

3种特殊流程控制语句

1.break语句     break语句用于终止某个语句块的执行    {    ……        break;      ...
  • jll19901222
  • jll19901222
  • 2015-05-31 19:50
  • 276

Mysql之流程控制语句

这篇博客主要是总结一下Mysq中的流程控制语句的用法,主要是:CASE,IF,IFNULL,NULLIF
  • BeMoreQuiet
  • BeMoreQuiet
  • 2017-02-07 18:01
  • 901

数据库之流程控制语句

一、if  else 语句 declare @avg float select @avg = avg(english) from score print '平均分数' + convert(varchar(20),@avg) if(@avg > 60) begi...
  • changwei07080
  • changwei07080
  • 2012-05-13 14:19
  • 1269

shell从入门到放弃(上)

650) this.width=650;" src="http://s5.51cto.com/wyfs02/M01/7F/DE/wKioL1cwdpjB1FBhAAAbfqYv8vs885.jpg" title="BAsh.jpg" alt=&quo...
  • Z_YTTT
  • Z_YTTT
  • 2016-11-03 13:52
  • 2671
    更多JavaEE资料请关注公众号
    个人资料
    • 访问:1949464次
    • 积分:19039
    • 等级:
    • 排名:第558名
    • 原创:326篇
    • 转载:1篇
    • 译文:2篇
    • 评论:1017条
    博客专栏
    最新评论