shell脚本之函数相关

   本节主要是作业和select 与case的相关

一、作业

1、斐波那契数列又称黄金分割数列,因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0112358132134、……,斐波纳契数列以如下被以递归的方法定义:F0=0F1=1Fn=F(n-1)+F(n-2)n2

写一个函数,求n阶斐波那契数列

图片1.png

2、汉诺塔(又称河内塔)问题是源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。

利用函数,实现N片盘的汉诺塔的移动步骤

QQ截图20160822130135.png

 

 二:select case

  select 循环与菜单

     select variable in list

          do

               循环体命令

          done

图片2.png

  select 循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示PS3提示符,等待用户输入

图片3.png

  用户入菜单列表中的某个数字,执行相应的命令

  用户输入被保存在内置变量REPLY中。

图片4.png

 

select 与case

  select 是个无限循环,因此要用break命令退出循环,或用exit命令终止脚本。也可以按ctrl+c退出循环

图片5.png

  select经常和case联合使用

图片6.png

 与for 循环类似,可以省略in list ,此时使用位置参量

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

(0)
DadiDadi
上一篇 2016-08-22 09:41
下一篇 2016-08-22 13:37

相关推荐

  • 第五周作业

    1、简述rpm与yum命令的常见选项,并举例 rpm 命令 linux的的包管理器,用于对rpm软件包,进行安装、升级、卸载、查询、校验等操作。 使用语法: rpm [OPTIONS] [PACKAGE_FILE] 常用选项: 安装: -i,–install 升级: -U,–update,-F,–freshen 卸载: -…

    Linux干货 2017-12-14
  • 从Linux小白到大牛——与狼共舞的日子7

    马哥教育网络班21期+第7周课程练习 1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@localhost ~]#&nbsp…

    Linux干货 2016-11-14
  • 马哥教育网络班21期+第14周课程练习

    iptables关键点 表:filter(过滤,防火墙);nat(网络地址转换);mangle(拆解报文,做出修改,封装报文);raw(关闭nat表启用的链接追踪机制);上述是根据功能来区分的,写规则要明白要实现的功能 链:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING 数据流向:流入PREROUTING–…

    Linux干货 2016-08-26
  • MySQL高可用架构之MHA

    MySQL高可用架构之MHA 1、关于MHA MHA(Master HA)是一款开源的MySQL的高可用程序,它为MySQL主从复制架构提供了automating master failover功能。MHA在监控到master节点故障时,会提升其中拥有的最新数据的slave节点成为新的master节点,在此期间,MHA会通过其它从节点获取额外信息来避免一致性…

    Linux干货 2017-03-30
  • 练习-vim的使用

    vi编辑器是linux上最常用的编辑器,vim是vi增强版, 一、vim的几种模式     编辑模式、插入模式、命令行模式     编辑模式:可以进行光标移动,字符删除,行的增删复制粘贴等操作  插入模式:对字符进行编辑,  命令行模式:通过各种命令进行保存,查找,替换,环境设置等操作 &…

    Linux干货 2016-07-04
  • echo

    echo命令详解

    Linux干货 2018-02-28