shell脚本学习--函数篇

Shell脚本学习--函数篇


问题:

工作需要,使用shell脚本对配置文件进行,配置初始化和修改,由于传入的参数十几个,操作繁复,需要几个功能模块。

a.像c语言一样传入两个数组,进行比较并执行配置和保存配置参数到文件。

b.输入参数无法直接进行确定

目标:

函数输入与输出

数组的输入输出

不定参数使用



一、函数输入输出

函数的输入(不定参数如何使用)

函数的输出(echo和$?)

# 函数的输入输出,echo和return


function fun_output_para () 

{
local sum=0;
until [ $# -eq 0 ] #判断输入参数是否读取完成
do
let sum+=$1;
shift #$1所代表的值将类推赋予下一个参数的值,如$1<--$2  $1<--$3;直至参数读取完毕
done;
echo ${sum}; #返回值方式1
# return ${sum}; #返回值方式2
}
使用
#返回值方式1时对应调用与显示output=`fun_output_para 1 2`echo ${output}使用返回值方式2时对应调用与显示fun_output_para 1 2echo $?
a、每次运行函数后传入的参数对应于$1 $2 ...${10}
b、传入参数的个数是$# c、使用‘shift’将使$1 $2 ....对应的参数值以下一个参数赋值 $1=$2  $2=$3 最后一个赋值为空
 



二、数组的输入与输出
# 数组输入,输出数组
function fun_inout_array ()
{
inputpar1=($1);


for ((i=0;i<${#inputpar1[@]};i++)) #for语句也像c语言般语法
{
temparray[$i]=$((${inputpar1[$i]} + 1));
}
echo  ${temparray[*]};
}


#函数调用与输出显示:


input=(1 2 3 4)
aimArray=`fun_inout_array "${input[*]}"`;
echo ${aimArray[*]}





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值