20230911 Shell指令数组以及函数值传递,值返回

  1. 实现一个对数组求和的函数,数组通过实参传递给函数
    #!/bin/bash
    
    function fun()
    {
    	sum=0
    	for ((i=0;i<$var;i++))
    	do
    		(( sum+=arr[i] ))
    	done
    	echo $sum
    }
    read -p "输入该数组个数: " var
    for((j=0;j<$var;j++))
    do
    	read -p "输入数组第$j个值: " arr[j]
    done
    
    fun ${arr[@]} $var
    ===================================
    输入该数组个数: 10
    输入数组第0个值: 1
    输入数组第1个值: 2
    输入数组第2个值: 3
    输入数组第3个值: 4
    输入数组第4个值: 5
    输入数组第5个值: 6
    输入数组第6个值: 7
    输入数组第7个值: 8
    输入数组第8个值: 9
    输入数组第9个值: 10
    55
    

  2. 写一个函数,输出当前用户的uid和gid,并使用变量接收结果
    #!/bin/bash
    
    function fun()
    {
    	k1=$((` grep "ubuntu" /etc/passwd -ni | cut -d ":" -f 4 `))
    	echo uid=$k1
    	k2=$((` grep "ubuntu" /etc/passwd -ni | cut -d ":" -f 5 `))
    	echo gid=$k2
    
    	arr=([0]=$k1 [1]=$k2)
    	#return $arr
    }
    fun
    var=$?
    echo $var
    =============================
    uid=1000
    gid=1000
    0
    

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值