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

台前网站建设价格网络运营推广

台前网站建设价格,网络运营推广,33岁改行做网站建设,满城网站建设Linux网络——Shell编程之函数 一、概述二、定义函数的格式1.格式一2.格式二 三、函数的查看和删除1.查看 declare2.删除 declare 四、函数的返回值1.return 返回值2.echo 返回值 五、函数的参数传入与变量范围1.函数的传参2.函数变量的作用范围 六、函数的应用1.阶乘2.递归目录…

Linux网络——Shell编程之函数

  • 一、概述
  • 二、定义函数的格式
      • 1.格式一
      • 2.格式二
  • 三、函数的查看和删除
      • 1.查看 declare
      • 2.删除 declare
  • 四、函数的返回值
      • 1.return 返回值
      • 2.echo 返回值
  • 五、函数的参数传入与变量范围
      • 1.函数的传参
      • 2.函数变量的作用范围
  • 六、函数的应用
      • 1.阶乘
      • 2.递归目录

一、概述

在shell脚本中,存在着大量的命令操作,其中有很多编写的代码的重复性很高,让代码出现了大量的冗余和繁琐,不易维护和解读。

作用:定义较为复杂的但是需要重复使用的内容,以便再次使用可以直接调用函数节约时间,提高效率。

二、定义函数的格式

1.格式一

function 函数名 {命令序列
}

在这里插入图片描述

2.格式二

函数名() {命令序列
}

在这里插入图片描述

三、函数的查看和删除

1.查看 declare

语法: declare -F
在这里插入图片描述

2.删除 declare

语法:unset 函数名
在这里插入图片描述

四、函数的返回值

1.return 返回值

return表示退出函数并返回一个退出值,脚本中可以用 $ ? 变量显示该值
使用原则:
函数一结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码
退出状态码必须是0~255,超出时值将为除以256取余

在这里插入图片描述

2.echo 返回值

echo对于linux来讲就是一个万能输出的工具,当 return 不能满足我们我们对返回值的需求时,可以强迫echo来充当返回值输出工具

在这里插入图片描述

五、函数的参数传入与变量范围

1.函数的传参

函数内部:
函数体内部的 $1、$2 代表的是调用函数时,函数后面跟的位置参数
在函数体内部的 $#代表调用函数时,函数后面跟的参数个数
在函数体内部的$@、$*代表调用函数时,函数后面跟的所有参数

函数外部:
函数体外的$1、$2 代表的是执行脚本时,脚本后面跟的位置参数
在函数体外时,$# 代表的是执行脚本时,脚本后面跟的参数个数
在函数体外时,$* 、$@ 代表的是执行脚本时,脚本后面跟的所有参数

2.函数变量的作用范围

函数默认只能脚本内的 shell 环境有效(使用source执行脚本,也会影响系统的当前shel环境)
脚本中的变量默认全局有效 (即函数体内外都有效)
在函数体内执行 local 变量 ,可将变量限定在函数体内部使用

六、函数的应用

1.阶乘

#!/bin/bash
##使用函数的递归实现阶乘
test1() {if [ $1 -eq 1 ]thenecho 1elif [ $1 -gt 1 ]thenlocal temp=$[$1 - 1]local result=$(test1 $temp)echo $[$1 * result]elseecho "输入的内容无效,请重新输入内容"fi
}
########### main ################
read -p "请输入内容的整数:" num
result=$(test1 $num)
echo "$num的阶乘为$result"

在这里插入图片描述

2.递归目录

#!/bin/bash
###使用函数递归目录,如果是文件直接输出文件名,如果是目录则输出目录名且输出此目录下的所有目录和文件名
function list_files {
for f in `ls $1`
doif [ -d "$1/$f" ]thenecho "$2$f"list_files "$1/$f" " $2"elseecho "$2$f"fi
done
}############## main #####################
read -p "请输入需要查询的目录:" num
list_files "/$num" ""

在这里插入图片描述

http://www.yidumall.com/news/17762.html

相关文章:

  • 常德网站建设多少钱app推广注册赚钱
  • 深圳做网站建设广州百度竞价外包
  • 大学生软件开发项目推荐湖南关键词优化排名推广
  • 网站排名怎么做 site网站创建免费用户
  • 珠海网站制作报价国外seo工具
  • 贵阳有哪些做网站的公司网站策划方案
  • ps做网站logo尺寸网络营销的概念和特点是什么
  • 网站团队建设情况谷歌搜索引擎首页
  • 手机网站开发需要哪些技术在线网站seo诊断
  • 做网站一定要实名认证吗网络营销效果评估
  • 做外账经常进哪几个网站新冠疫苗接种最新消息
  • 文明网站建设方案seo案例分析
  • 虎门今天新增疫情保定seo网站推广
  • 成都专业网站搭建公司baidu com百度一下
  • 新开传奇发布网站百度一下电脑版首页
  • 网站开发设计文员百度关键词首页排名服务
  • 郑州高端网站建设优化的近义词
  • 公司网站ICP怎么备案呢aso排名服务公司
  • 网站建设和运维app推广平台排行榜
  • 政府网站建设 强化考评问责seo服务哪家好
  • 女性时尚资讯+淘宝客模式系列网站源码南京百度快速排名优化
  • 做网站分类链接西安百度推广运营公司
  • 妈妈网站源码广告营销推广方案
  • 做h5网站的公司广东vs北京首钢
  • 网站制作报价ihanshi百度站长工具查询
  • 中华人民共和国住房和城乡建设部官方网站平台推广是什么意思
  • 英语网站大全免费能去百度上班意味着什么
  • 视频网站建设服务360地图下载最新版
  • 网站设计方案书pptgoogle 浏览器
  • 在网站上做承诺关键词搜索神器