• 《Shell脚本学习指南》学习笔记之自定义函数


    Shell的函数在使用之前必须先定义,定义格式:

    [ function ] funname [()]
    {
        action;
        [return int;]
    }
    • 可以带function fun()定义,也可以直接fun() 定义,不带任何参数。
    • 参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255)

    示例

    fsum 2 5
    
    fsum(){
    	echo $1,$2
    	return $1+$2
    }
    
    sum=$(fsum 2 5)
    echo $?
    echo "sum=$sum"

    执行输出:

    fsum: not found
    7
    sum=2,5

    从上面这个例子我们可以得到几点结论:

    • 必须在调用函数地方之前,声明函数,shell脚本是逐行运行,这点和编译型语言不通。
    • 函数返回值,只能通过$? 系统变量获得,而“sum=$(fsum 2 5)”这种方式,是将标准输出传递给主程序的变量,而不是返回值!

    Shell函数可以在脚本文件中使用之前定义它,也可以把函数定义在一个独立的文件使用点号(.)命令来引用它。如function.sh和testshell.sh在同一目录中,function.sh

    fsum(){
    	echo $1,$2
    	return $(($1+$2))
    }

    testshell.sh

    #! /bin/sh
    . ./function.sh
    fsum 2 5


  • 相关阅读:
    今晚的比赛(2011.12.4)
    js中prototype,constructor的理解
    laravel中empty(),is_null() 以及isEmpty()
    mysql查询语句and,or
    jquery简易tab切换
    Qt 的QcomboBox的简单使用
    折半查找
    C++强制类型转换(转)
    二叉树学习
    c++的重载,覆盖与隐藏
  • 原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4621297.html
Copyright © 2020-2023  润新知