Shell函数(五)

276 阅读1分钟

一、Read

read命令是可以提示用户在规定时间内输入所需要的变量并且使用该变量到执行逻辑中。

  • 基本语法

    表示提示用户input your value在十秒内完成。

 read -t 10 -p "input your value" VALUE
  • 案例说明

    通过获取用户输入的值作为条件进行循环遍历

     #!/bin/bash
     read -t 10 -p "请输出需要循环的次数:" NUMBER
     i=0
     v=$NUMBER
     echo "获取v=$v"
     while [ $i -lt $v ]
     do
             echo $i
             i=$[ $i+1 ]
     done
    

    输出结果

     [root@izwz9eldxtlzr8ehu1fmjbz function]# [root@izwz9eldxtlzr8ehu1fmjbz function]# sh read.sh
     请输出需要循环的次数:10
     获取v=10
     0
     1
     2
     3
     4
     5
     6
     7
     8
     9
    

二、自定义函数

1. 基本语法

 [function]  functionName[()]{
     执行逻辑;
     [return int;]
 }
 //调用函数
 functionName

2. 注意事项

  1. shell逐行运行的,所以在调用函数之前必须声明函数
  2. 函数返回值只能通过$?系统变量返回,可以显示加return返回。默认以最后一条命令的执行结果作为返回值(0成功非0失败),这里说的是输出结果!是指执行是否成功

3. 案例说明

通过执行shell命令根据提示输入加数获取相加结果。

 #!/bin/bash
 r=0
 function sum(){
         r=$[$1+$2]
         echo $r
 }
 ​
 read -t 10 -p "输入第一个加数:" P1
 read -t 10 -p "输入第二个加数:" P2
 ​
 sum $P1 $P2
 ​

输出结果

 [root@izwz9eldxtlzr8ehu1fmjbz function]# sh sumFunction.sh
 输入第一个加数:3
 输入第二个加数:2
 5

\