14.2.0: 脚本逻辑基础-功能抽象-function



1. function语句

基本结构:

function fun_name() {
执行语句1;
执行语句2;
...
}
## function里面调用的$1是fname()后面跟的第一个参数,需要和shell脚本的$1区分

用途:
fuction主要是用来代码复用,减少重复代码量


2. function中的返回值

如果我们创建一个function,有时需要把function执行的$?返回,可用以下方式

#!/bin/bash

function test() {
    ls /NOT/EXIST/FOLDER
    RETVAL=$?
    return $RETVAL
}

# 执行function
test

# 以function的返回值退出
exit $RETVAL

其中return代表了返回整个function的返回值

3. function要使用外部变量

#!/bin/bash

global_var1=test

function test() {
    echo "${global_var1}"
}

# 执行function
export test
test

function内部使用外部变量的时候,必须要先export变量为全局变量才可使用