shell脚本中函数调用的返回值,以及退出状态问题

载入函数,用户输入计算立方和平方的shell 脚本市里

定义函数square和cube,其中square 是计算平方和,cube 是计算立方和。具体代码:

#!/bin/bash                            //调用shell 脚本执行环境 

#filename :pingfang               //定义程序的名称

function square                    //定义函数square,函数体位square

{                                         //函数体开始

local temp                           //定义本地变量

let temp=$1*$1                    //使用let计算平方和

echo  “$1 平方和为:$temp”         //输出平方和

}                                           //函数体结束

function cube                       //定义函数cube,函数体位cube

{                                          // 立方函数体开始

local temp                          //定义本地函数体

let temp=$1*$1*$1           //使用let计算立方

echo "$1 立方和为: $temp"       //输出立方和

}                                      //计算立方体结束

注:此段脚本为函数立方和平方计算脚本。

下面是面对用户输入调用上段计算脚本

其中用到source 命令调用上段pingfang.sh 脚本,代码如下:

#!/bin/bash                //调用程序执行脚本

#filename:计算           //定义文件名

source pingfang.sh    //载入上个计算程序脚本

echo "请输入一个整数:"   //显示输出一个整数。

read N                                   //读取用户的数值

i=1                                        //变量i 赋值

while [ $i-le $N  ]                //循环结构体,定义条件为 i小于等于变量N

do                                       //表示循环开始

square $i                             //调用square 函数把变量赋值给i.

i=$(($i+1))                          //变量自动加1

done                                    //表示循环体结束

echo  "---------"                 //显示分隔符

 i=1                                       //变量i 赋值1

while [$i -le $N ]                 //定义条件为变量i小于等于N ,

do                                      //表示while do 的循环语句开始

cube $i                                //调用cube 函数,且将变量i的值为参数

i=$(($1+1))                        //变量自动加1

done                                //循环体结束

注:在两个脚本中一定要把两个函数定义一致。

原文地址:https://www.cnblogs.com/mfryf/p/2494777.html