shell脚本编程之函数

  在编写脚本时经常会遇到某个任务需要重复使用的问题,需每次都要输入同样的代码是件挺烦人的事情,还好可以通过编写函数还简化这项工作。

  函数其实就是给一段代码起个名字,在每次使用这段代码的时候可以直接使用函数名来调用就可以了。

一、创建函数

  创建函数的格式有两种:

  格式1:function 函数名{

        函数体

       }

  格式2:函数名(){

        函数体

       }

  调用函数时直接写函数名即可。

二、使用函数

1.jpg

   上例中在一开始定义了名为test的函数,然后直接使用函数名调用即可。

三、函数的返回值

  1、执行状态返回值:函数体中最后一次执行的命令状态结果;

2.jpg

  函数执行成功,返回值为默认的0。

  2、自定义执行状态返回值

   可以使用return命令来定义状态返回值,状态值的取值范围为0-255。

5.jpg

四、接受参数的函数

  函数也可以带入参数,如下面的实例所示:

5.jpg

  函数中引用了两个参数,则在使用函数时需要手动将参数传递过去,如图中标注处。

6.jpg

五、创建函数库文件

  可以将自定义的函数保存在一个的文件中,在需要时可以直接调用所需要的函数。

  下面是自定义的一个库文件:

1.jpg

  在脚本中使用这个库文件中的函数:

2.jpg

  脚本的运行结果:

3.jpg

  也可以在命令行中来使用自定义的函数,只需要在bash shell启动时读取这个库文件。

  在~/.bashrc文件中添加库文件:

4.jpg

  在命令行中直接使用自定义的函数:

6.jpg

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

(0)
petmasterpetmaster
上一篇 2016-01-05 12:59
下一篇 2016-01-05 13:00

相关推荐

  • Linux的终端类型

         序  终端的概念是由Ken Thompson提出的,是人机交互的接口。它是一种字符型设备,有多种类型,它大体上分为设备终端,物理终端,虚拟终端,图形终端,串行终端,伪终端。 一、   设备终端  设备终端就是显而易见的外在设备,比如键盘、鼠标和显示器等。 二、&nbsp…

    Linux干货 2016-10-19
  • mysql-yum安装多实例

    1.安装包 yum install mariadb-server 2.创建文件 3 分别生成3306,3307,3308数库文件 4.复制主配置文件并分别修改端口路径 5.准备一个启动脚本并开启服务 /mysqldb/3307/mysqld start 6.用mysql -S 命令进入    

    2018-01-28
  • 生产环境模拟实现keepalived+Nginx调度器+httpd的高可用集群

    具体过程是用Nginx做负载均衡,可以将Nginx和主机放在同一台机子上,也可以分开放置,只不过分开的话要指明RS是Nginx的主机地址。至于直接将虚拟地址配置在Nginx主机上我暂时还未成功 下面附上我的双主模型的主keepalived服务器的配置 ! Configuration File for keepalive…

    Linux干货 2016-11-11
  • 进程管理

    简述进程的相关理论与工具使用

    2017-09-09
  • 19道小米网运维工程师笔试真题,你能通关吗?

    第一部分:Linux基础 题目1: 有一百个图片文件,它们的地址都是 http://down.xiaomi.com/img/1.png http://down.xiaomi.com/img/2.png … 一直到http://down.xiaomi.com/img/100.png 批量下载这100个图片文件,并找出其中大于500KB的文件。 题目2: 一个文…

    2017-09-08