linux Shell 命令行-07-func 函数

拓展阅读

linux Shell 命令行-00-intro 入门介绍

linux Shell 命令行-02-var 变量

linux Shell 命令行-03-array 数组

linux Shell 命令行-04-operator 操作符

linux Shell 命令行-05-test 验证是否符合条件

linux Shell 命令行-06-flow control 流程控制

linux Shell 命令行-07-func 函数

linux Shell 命令行-08-file include 文件包含

linux Shell 命令行-09-redirect 重定向

函数

[ function ] 函数名 [()]

{

    动作;

    [返回值;]

}

示例

#!/bin/sh

# 函数演示

firstFunc() {
    echo "这是我的第一个 Shell 函数。"
}

echo "函数开始"
firstFunc
echo "函数结束"

运行

houbinbindeMacBook-Pro:shell houbinbin$ vi function.sh
houbinbindeMacBook-Pro:shell houbinbin$ chmod +x function.sh
houbinbindeMacBook-Pro:shell houbinbin$ ./function.sh
函数开始
这是我的第一个 Shell 函数。
函数结束

带返回值的函数

#!/bin/sh


# 带返回值的函数

funcWithReturnVal() {
    echo "输入第一个数字: "
    read firstNum
    echo "输入第二个数字: "
    read secondNum
    return $(($firstNum+$secondNum))
}

echo "带返回值的函数开始:"
funcWithReturnVal
returnVal=$?
echo "结果: $returnVal"

运行

houbinbindeMacBook-Pro:shell houbinbin$ ./funcWithReturnVal.sh
带返回值的函数开始:
输入第一个数字:
1
输入第二个数字:
2
结果: 3

带参数的函数

#!/bin/sh

# 带参数的函数

hasParam() {
    echo "所有参数为 $*"

    if [ $# -gt 0 ]
    then
    echo "有参数"
    return 1
    else
    echo "没有参数"
    return 0
    fi
}

hasParam 1 2 3

运行

houbinbindeMacBook-Pro:shell houbinbin$ vi funcWithParam.sh
houbinbindeMacBook-Pro:shell houbinbin$ chmod +x funcWithParam.sh
houbinbindeMacBook-Pro:shell houbinbin$ ./funcWithParam.sh
所有参数为 1 2 3
有参数

使用$n获取参数值,当 n >= 10 时,使用 ${n}

本文由博客一文多发平台 OpenWrite 发布!

相关推荐

  1. linux Shell 命令-07-func 函数

    2024-03-14 13:32:03       24 阅读
  2. LinuxShell编程中source和export命令

    2024-03-14 13:32:03       18 阅读
  3. PostgreSQL自带的命令工具07- pg_dump

    2024-03-14 13:32:03       9 阅读
  4. linux Shell 命令-02-var 变量

    2024-03-14 13:32:03       21 阅读
  5. 01. k210-命令环境搭建(ubuntu环境)

    2024-03-14 13:32:03       32 阅读
  6. linux Shell 命令-01-intro 入门介绍

    2024-03-14 13:32:03       26 阅读
  7. linux Shell 命令-08-file include 文件包含

    2024-03-14 13:32:03       21 阅读
  8. linux Shell 命令-09-redirect 重定向

    2024-03-14 13:32:03       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-14 13:32:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-14 13:32:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-14 13:32:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-14 13:32:03       20 阅读

热门阅读

  1. 汉诺塔-python递归

    2024-03-14 13:32:03       22 阅读
  2. C while 和 do while 区别

    2024-03-14 13:32:03       21 阅读
  3. [蓝桥杯 2021 省 AB2] 完全平方数

    2024-03-14 13:32:03       17 阅读
  4. 富格林:掀开黑幕背后保障安全

    2024-03-14 13:32:03       20 阅读
  5. PAT 2024年春季(甲级)

    2024-03-14 13:32:03       21 阅读
  6. 区块链技术的应用场景和优势

    2024-03-14 13:32:03       18 阅读
  7. Qt+FFmpeg+opengl从零制作视频播放器-10.解码类实现

    2024-03-14 13:32:03       19 阅读
  8. H12-811_190

    2024-03-14 13:32:03       16 阅读