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

传入参数时在函数后加上相应的参数即可,多个参数以空格隔开,例如:mFunc 1 2

参数只能以空格分开,不能是逗号或其他,函数体内通过$1$2$n 获取各个参数。

函数返回值只能是整形数字,取值范围0-255 。形式可以是1 ,也可以是"1"

函数外通过$? 获取返回值:

#! /bin/bash
mFun(){
    echo "Hello ${1}"
    echo $2
    return 99
}
mFun 1 2
echo $?
mFun 1,2  # 函数调用会和预期不一样

输出:

> ./func.sh 
Hello 1
2
99
Hello 1,2  # shell把1,2当成一个变量值
最后修改:2018 年 01 月 21 日
喜欢就给我点赞吧