Linux学习笔记

来源:互联网 发布:sql 唯一 distinct 编辑:程序博客网 时间:2024/06/05 22:44

基本语法

funname (){    action;    return int; # 参数返回,可以显示添加(返回n=(0-255)):如果不加,将以最后一条命令运行结果,作为返回值。 }

 

示例1:定义并调用无返回值的函数

#!/bin/basha=1b=2c=`expr $a + $b`demofunc(){echo "a+b=${c}"        }demofunc---output:a+b=3

示例2: 定义并调用有返回值的函数

#!/bin/basha=1b=2demofunc(){c=`expr $a + $b`return ${c}      }demofuncecho "输入的两个数字之和为 $? !" #函数返回值在调用函数后,通过 $? 获取

 

注:

1.所有函数在使用前必须先定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它之后,才可以使用。

2.调用函数仅使用其函数名即可。

 

关于函数参数的传递

我们可以在调用函数的时候给其传递参数,例如:

#!/bin/bashfunWithParam(){    echo "第一个参数为 $1 !"    echo "第二个参数为 $2 !"    echo "第二个参数为 $3 !"    echo "第十个参数为 ${10} !" #从10开始,获取参数必须用 ${n} 的方式    echo "第十一个参数为 ${11} !"    echo "参数总数有 $# 个!"    echo "作为一个字符串输出所有参数 $* !"}funWithParam 1 2 3 4 5 6 7 8 9 10 11---output:第一个参数为 1 !第二个参数为 2 !第二个参数为 3 !第十个参数为 10 !第十一个参数为 11 !参数总数有 11 个!作为一个字符串输出所有参数 1 2 3 4 5 6 7 8 9 10 11 !

此外,还可以使用以下特殊字符用来处理参数:

参数处理说明$#传递到脚本的参数个数$*以一个单字符串显示所有向脚本传递的参数$$脚本运行的当前进程ID号$!后台运行的最后一个进程的ID号$@与$*相同,但是使用时加引号,并在引号中返回每个参数。$-显示Shell使用的当前选项,与set命令功能相同。$?显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。
0 0
原创粉丝点击