Shell脚本中的自定义函数

在写程序时,经常会用到函数,一般开发工具拥有丰富的函数库。但有时还需要根据自己的需要自定义函数满足我们的需求。

在linux中,写shell脚本也一样,有时会用到自定义函数。

函数,最简单的定义为:将一组命令集或语句形成一个可用块,这些块称为函数。

1、定义函数的格式:

function-name ( ){
        command1
        ........
}

#函数名前面也可以加上function关键字
function  function-name( ) {
        command1
        ........
}

2.函数调用

以下是一个函数的脚本实例:

    #!/bin/bash
    function hello(){          #声明函数
      echo "Hello!"            #函数的主体,输出"Hello!"
    }                          #函数结束
    hello                      #调用函数

3.参数传递

向函数传递参数就像在脚本是使用变量位置$1,$2,$3...$9

以下是一个传递参数的实例:

  #!/bin/bash
  function hello(){
      echo "Hello! The first parameter is '$1'."
  }
  hello good

#该脚本执行的结果是: Hello! The first parameter is ‘good‘.

4.函数文件

保存函数的文件,用以上的例子写成一个函数文件如下:

  #!/bin/bash
  function  hello ( ){
    echo "Hello!"
    return 1
  }

上面的hellofunction文件就是一个函数文件,可通过另一个脚本来调用

  #!/bin/bash
  . hellofunction      #调用函数文件,点和hellofunction之间有个空格
  hello                #调用函数

5.载入和删除

用set查看已载入的函数

用unset function-name 取消载入

举例如下:

  #!/bin/bash
  #hellof
  . hellofunction
  unset hello
  hello            #因为已经取消载入,所以会出错

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-07 01:00:06

Shell脚本中的自定义函数的相关文章

shell脚本中简单的函数示例

这个脚本 程序my_name演示了函数的参数是如何传递的,以及函数如何返回一个true或false值.使用一个参数来调用该脚本程序,该参数是想要在问题中使用的名字. shell脚本代码 #!/bin/sh yes_or_no() { echo "Is your name $* ?" while true do echo -n "Enter yes or no: " read x case "$x" in y | yes ) return 0;;

shell脚本中多个函数依次执行

cat >> 1.sh << EOF #!/bin/bash function func1 { echo "func1" } function func2 { echo "func2" } function func3 { echo "func3" } func1 func2 func3 EOF 原文地址:https://www.cnblogs.com/effortsing/p/10084262.html

在shell脚本中使用函数

转载请标明:http://www.cnblogs.com/winifred-tang94/ 对于在脚本中重复使用的功能模块,可以封装成为函数. shell脚本中函数的定义可以使用如下两种方式: a. 函数名() { ······· } b. function 函数名() { ·········· } eg. 结果为: 值得注意的是,如果判断相等哪里想用test指令的话,应该使用如下的格式:

Shell脚本中的函数、数组

Shell脚本中的函数 Shell脚本中的数组 原文地址:http://blog.51cto.com/13515599/2107416

shell脚本中的函数,shell中的数组,shell项目-告警系统

shell脚本中的函数 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式: function f_name() {command }函数必须要放在最前面,function可以省略直接写函数名 示列1,打印shell的参数 [[email protected] shell]# cat fun1.sh #!/bin/bash function inp(){ echo "the first par is $1" echo

20.1 Shell脚本介绍;20.2 Shell脚本结构和执行;20.3 date命令用法;20.4 Shell脚本中的变量

20.1 Shell脚本介绍 1. shell是一种脚本语言 aming_linux blog.lishiming.net 2. 可以使用逻辑判断.循环等语法 3. 可以自定义函数 4. shell是系统命令的集合 5. shell脚本可以实现自动化运维,能大大增加我们的运维效率 20.2 Shell脚本结构和执行 1. 开头(首行)需要加: #!/bin/bash 2. 以#开头的行作为解释说明: 3. 脚本的名字以.sh结尾,用于区分这是一个shell脚本 4. 执行.sh脚本方法有两种:

shell学习总结之自定义函数

shell学习总结之自定义函数 Myfun (){ echo patams1 is $1 echo -n "now i is $i " ! [ "$i" ] && exit ; echo jj return '1' } myf=$(Myfun); echo myf Myfun 12 unset Myfun Myfun echo 'the end !'$myf 别人的 #! bin/bash # ----------------------------

shell脚本中局部变量local

shell脚本中局部变量 在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题. (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 例1:脚本变量的作用域 #!/bin/bash #define the function ltx_func ltx_func() {    echo $v1    #modify the variable v1   

shell脚本中的循环

常用到的循环有for循环和while循环. for循环 [[email protected] sbin]# cat for.sh #! /bin/bash for i in `seq 1 5`; do echo $i done 脚本中的 seq 1 5 表示从1到5的一个序列.你可以直接运行这个命令试下.脚本执行结果为: [[email protected] sbin]# sh for.sh 1 2 3 4 5 通过这个脚本就可以看到for循环的基本结构: for 变量名 in 循环的条件: d