function

关于shell如何调用函数,以及如何使用函数的简短说明。

定义

示例如下

参数可以用 $1$2、剩余参数$@来接收,函数内部可以使用全局的变量。可以返回数据。也可以echo出一段内容,然后调用方使用如下来接收。

url=$(url_escape "${parameter_value}")

函数定义如下:

url_escape() {
    local raw_url="$1"

    value=$(sed -e 's/ /%20/g' \
       -e 's/!/%21/g' \
       -e 's/"/%22/g' \
       -e 's/#/%23/g' \
       -e 's/\&/%26/g' \
       -e 's/'\''/%28/g' \
       -e 's/(/%28/g' \
       -e 's/)/%29/g' \
       -e 's/:/%3A/g' \
       -e 's/\t/%09/g' \
       -e 's/?/%3F/g' <<<"$raw_url");

    echo "$value"
}

方式2

使用如下方式定义function函数。

返回值好像也可以用return

调用

myfunc $1 $2