函数与数组

目录

函数与数组

一、函数的定义与调用

1.函数的作用

2.函数的使用

几个关于括号的用法

二、函数与返回值

四、数组


函数与数组

一、函数的定义与调用

1.函数的作用

函数可以将一个专门的功能进行封装,用于解决一个特定的问题,并且可以通过传递不同的参数给某个函数,实现处理不同数据的功能。函数的参数跟脚本的参数比较类似。

2.函数的使用

函数名,参数,返回结果,其中函数名是必须的,参数和返回结果可选,根据需要进行处理

 示例:
 #定义一个函数
 function add(){
     let sum=$1+$2
     echo $sum   #函数的返回结果,注意,不是使用 return 0
 }
 ​
 #调用add函数
 #result=`add 100 200`
 result=$(add 100 200)
 echo "result的结果为:$result"
 ​
 在上述示例中,调用函数 add 100 200 时,,类似于命令的参数传递的方式,并且在函数体中也是使用 $1 $2 的取值方式,没有编程意义上所谓的形参和实参一说。

image-20231004132539920

image-20231004132657249

image-20231004132514177

几个关于括号的用法
 1.(())  双圆括号,可以运算,可以代替 expr,也可用于for循环条件((i=1;i<=100;i++))
 2.${}   可以取特定参数或变量的值,比如 ${1},${username}
 3.$()   可以代替反引号执行其中的计算命令
 4.$[]   用于整数计算,可以代替 expr

 

 #请计算任意数字的阶乘,使用函数来传递参数
 ​

 检查参数是否是一个目录(注意此处参数的调用)
 function is_directory(){
     if [ id $1 ]; then
         echo "Greate,$1 is a directory..."
     else
         echo "Sorry,$1 is not a firectory..."
     fi
 }
 ​
 echo "check if the input is a directory..."
 is_directory $1    # $1 是运行脚本时给定的参数
 echo "check end..."

二、函数与返回值

 function myfunc(){
     i=$1
     j=$2
     echo `expr $i \* $j`
 }
 ​
 result=`myfunc 59 100`
 ​
 if [ $result -lt 6000 ]; then
     echo "Too Low"
 else
     echo "Great"
 fi

四、数组

其实这里的数组和编程语言中的数组就比较类似了

 在Bash宏,可以采用现实的 delare -a variable 语句引入整个数组。
 如:
 declare -a weekday
 weekday[0]=sunday
 weekday[1]=Monday
 ......
 输出数组所有的元素:
 echo ${weekday[@]}
 输出某一个元素:
 echo ${weekday[1]}
 ​
 使用 # 号字符求取整个数组有多少个元素 :
 echo ${#weekday[@]} 或 ${#weekday[*]}
 还可以使用 # 号字符求取数组元素长度:
 echo ${#weekday[0]},结果输出 6

image-20231004153652780

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值