当前位置: 首页 > news >正文

福田做棋牌网站建设哪家公司便宜/关键词数据分析

福田做棋牌网站建设哪家公司便宜,关键词数据分析,营销推广包括什么,wordpress mysql5.5一、函数的作用 语句块定义成函数约等于别名,定义函数,再引用函数 封装的可重复利用的具有特定功能的代码 二、定义函数 定义函数就是只将一段实现某个任务的命令序列封装进一个函数,便于使用和后期维护。 function 函数名() { 命令序列 }…

一、函数的作用

语句块定义成函数约等于别名,定义函数,再引用函数
封装的可重复利用的具有特定功能的代码

二、定义函数

定义函数就是只将一段实现某个任务的命令序列封装进一个函数,便于使用和后期维护。

function 函数名() {
命令序列
}
函数名() {
命令序列
}

[root@localhost1 func]#vim definite.sh
#!/bin/bash
#定义函数运算()
function yunsuan() {a=2b=3jia=$[ $a + $b ]jian=$[ $a - $b]echo "相加等于:$jia"echo "相减等于:$jian"
}

三、调用函数

定义过的函数需要调用才能执行其中的命令序列。

1.在脚本中调用函数

[root@localhost1 func]#vim definite.sh
#!/bin/bash
function yunsuan() {a=2b=3jia=$[ $a + $b ]jian=$[ $a - $b]echo "相加等于:$jia"echo "相减等于:$jian"
}#直接在脚本中写入函数名
yunsuan[root@localhost1 func]#bash definite.sh
相加等于:5
相减等于:-1

2.在函数中调用函数\

[root@localhost1 func]#vim definite.sh
#!/bin/bash
function jiajian() {a=10b=3jia=$[ $a + $b ]jian=$[ $a - $b]echo "相加等于:$jia"echo "相减等于:$jian"
}function chengchu() {a=10b=3cheng=$[ $a * $b ]chu=$[ $a / $b]echo "相乘等于:$cheng"echo "相除等于:$chu"
}#调用上两个函数
yunsuan() {jiajianchengchu
}yunsuan[root@localhost1 func]#bash definite.sh
相加等于:13
相减等于:7
相乘等于:30
相除等于:3

四、函数传参

在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值。例如:$1表示第一个参数,$2表示第二个参数…即使用位置参数来实现参数传递。

注意

  • 当我们执行脚本时跟的参数,对应的是脚本中的位置变量
  • 当我们执行函数时跟的参数,对应的是函数中的位置变量

虽然都表示为$1、$2,但我们执行一个函数时,传入的参数只跟其输入函数的顺序有关,与输入脚本时传入参数的顺序无关。

[root@localhost1 ~]#vim chuancan.sh
#!/bin/bashtest1() {jian=$[ $1 - $2 ]   #脚本中的$1对应先传入的30,$2对应后传入的50echo "相减的值为:$jian"
}test1 $2 $1   #执行函数时,先传入30($2),再传入50($1)[root@localhost1 ~]#bash chuancan.sh 50 30  #执行脚本时传入参数 $1对应50 $2对应30
相减的值为:-20

五、函数的返回值

return 表示退出函数并返回一个退出值,脚本中可以用$?变量表示该退出值(状态码)

在函数中的使用原则
函数一结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码;
退出状态码必须是0~255,超出时值将为除以256取余。

在这里插入图片描述

[root@localhost1 array]#vim returntest.sh
#!/bin/bash
returntest1() {if [ $1 -eq $passwd ];thenecho "$name的密码输入正确!"elseecho "$name的密码输入错误!"return 1fi
}name=张三
passwd=123456
returntest1 $1[root@localhost1 array]#bash returntest.sh 123
张三的密码输入错误!
[root@localhost1 array]#echo $?  
1     -- 这里输入错误返回了我们指定的状态码1
[root@localhost1 array]#bash returntest.sh 123456
张三的密码输入正确!
[root@localhost1 array]#echo $?
0

六、函数的递归

是指函数在满足递归条件的情况下,调用函数本身执行到

[root@localhost1 ~]#vim jiecheng.sh
#!/bin/bash
fact() {if [ $1 -eq 0 -o $1 -eq 1 ];thenecho 1elseway=$[$1 - 1]    #迭代方式(指定数每次减1)result=$(fact $way)    #递归执行函数(使初始值每次减1)echo $[ $1 * $result ]    #输出初始值乘每次递归的值,直到1(实现阶乘效果)fi
}
read -p "请输入一个数:" n
result=$(fact $n)
echo "$n的阶乘为:$result"[root@localhost1 ~]#bash jiecheng.sh
请输入一个数:6
6的阶乘为:720
[root@localhost1 ~]#bash jiecheng.sh
请输入一个数:1
1的阶乘为:1
[root@localhost1 ~]#bash jiecheng.sh 
请输入一个数:4
4的阶乘为:24
[root@localhost1 ~]#bash jiecheng.sh 
请输入一个数:9
9的阶乘为:362880

七、函数及其变量的作用范围

1.函数在shell脚本中仅在当前shell环境中有效
2.shell脚本中变量默认全局有效
3.将变量限定在函数内部(定义变量前加上 local 命令)

[root@localhost1 ~]#vim variable.sh
#!/bin/bash
#定义i变量值为1
i=1  test1() {i=10    #定义i变量值为10echo $i
}test1    #调用函数
echo $i    #输出变量i的值#输出的i均为10,是由于第二点的特性,i的值在函数中被重新赋值了
[root@localhost1 ~]#bash variable.sh
10
10

使用 local 限定函数内部变量

[root@localhost1 ~]#vim variable.sh
#!/bin/bash
i=1test1() {local i=10    #加local限定为内部变量,将不再影响函数外的变量echo $i
}test1
echo $i[root@localhost1 ~]#bash variable.sh
10
1

八、外部脚本调用函数

在外部脚本调用一个脚本或文件中的函数,需要先在脚本中加载目标文件,需要使用绝对路径(source 文件名 或 . 文件名),再输入函数名即可执行。

[root@localhost1 ~]#vim hanshu.sh
#!/bin/bashtest1() {echo "我是hanshu.sh文件中的test1函数"
}#在外部脚本中调用hanshu.sh中的test1函数
[root@localhost1 ~]#vim diaoyong.sh
source /root/hanshu.shtest1#执行外部脚本
[root@localhost1 ~]#bash diaoyong.sh
我是hanshu.sh文件中的test1函数

调用函数库文件
函数库文件是指将一些常用的函数提前编写好放入这个函数库文件,当我们编写脚本时,同样通过绝对路径加载函数库文件,在调用其中的函数,这样可以提高代码编写的效率(类似于java中面向对象编程,调用方法)

http://www.jmfq.cn/news/5101759.html

相关文章:

  • 5 网站建设的基本步骤是/网站做seo教程
  • 图形网站建设软件/泉州百度关键词优化
  • 邯郸科技有限公司/河南seo和网络推广
  • 服务器和域名都有了 怎么做网站/网络营销推广工具
  • 做网站怎么接广告赚钱/企业网络营销策略分析案例
  • vue做网站前端/北京seo顾问推推蛙
  • 网站备案登记信息/seo百度关键字优化
  • 网站里的网页是一个一个做的么/郑州seo排名哪有
  • 有没有手机网站推荐/自动推广软件免费
  • 自己做网站要多少钱/品牌推广计划
  • 免费1级做爰片观看网站在线视频/电脑培训学校排名
  • 专业小程序网站开发/地推任务网
  • 建筑招工找活平台/优化关键词的作用
  • 一般网站维护费用/外链在线生成
  • 当建设部门网站/app拉新推广平台
  • 制作网站的发展前景/制作网页链接
  • 吸引流量的网站/设计网络营销方案
  • 网站开发报价 福州/域名备案官网
  • 帝国cms 做的博客网站/如何在百度推广自己
  • 教育网站设计案例/杯子软文营销300字
  • wordpress菜单插件/seo网络营销公司
  • 足球比分网站建设/河南疫情最新消息
  • 公司网站建设的请示/公司网站设计
  • 邯郸做企业网站改版/百度推广一个月费用
  • wordpress建淘宝客网站教程/世界足球排名前100
  • 网站建设收费标准市场/百度视频
  • 营销策划方案怎么做模板/seo常用工具有哪些
  • 网站banner图怎么设计/深圳企业网站制作
  • 洪山网站建设公司/广告竞价排名
  • 台江网站建设/东莞seoseo关键词排名优化