Linux十五:shell - 函数

shell - 函数

引入
  1. 函数、脚本、命令、工具之间的关系

    在这里插入图片描述

  2. 本质

    都是功能化、模块化的能够实现某个具体需求的代码集合,只是调用过程不同或复杂度不同

  3. $( 命令 )

    命令替换,获取执行命令后的结果

一、read
  1. 作用

    与用户进行IO设备的交互,读取控制台的输入

  2. 基本语法
    read -t 时间 -p "字符串" 变量名
    
    选项说明
    1-t在指定等待时间内输入内容,没写-t:表示一直等待
    2-p指定读取值时的提示符
    3变量名指定读取值的变量名
  3. 实力测试
    #!/bin/bash
    read -t 20 -p "请在20秒内输入您的姓名:" name
    echo "您输入的姓名是:"$name
    

    在这里插入图片描述

二、系统函数
  1. basename
    本质

    是对文件的全类名做的一个剪切,剪切掉/前面的所有内容

    基本语法
    命令格式功能
    1basename 文件的全路径名输出文件名,不含路径
    2basename 文件的全路径名 后缀名输出文件名,不含路径和后缀名
    实例测试
    #!/bin/bash
    echo filename: $(basename $0 .sh)
    

    在这里插入图片描述

  2. dirname
    本质

    是对文件的全类名(字符串)做的一个剪切,剪切掉最后一个/后面的所有内容

    基本语法
    命令格式功能
    1basename 文件的绝对路径全路径名输出绝对路径
    2basename 文件的相对路径全路径名输出相对路径
    测试

    在这里插入图片描述

三、自定义函数
  1. 基本语法

    function funcname ()
    {
    	// 程序;
        return 返回值;
    }
    
  2. 注意事项

    ① 必须在调用函数地方之前,先声明函数,

    ​ 因为shell脚本是解释性语言,即逐条运行。不会像其它语言一样先编译后执行

    ② 函数的返回值,通过 $? 获得。

    ​ 如果有return语句,则返回其数值,且return的值只能返回 0-255 内的整数值

    ​ 如果没有return语句,则返回函数体最后一条语句的结果

  3. 测试
    脚本内的函数
    #!/bin/bash
    function add() {
        sum=$[$1 + $2]
        echo $sum
    }
    read -p "请输入第一个参数:" a
    read -p "请输入第二个参数:" b
    r=$(add $a $b)
    echo "结果的平方" $[$r * $r]
    
    结果

    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

e_nanxu

感恩每一份鼓励-相逢何必曾相识

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值