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

Shell编程基础(十二)函数

函数

    • 概念
    • 定义
    • 调用函数
    • 综合脚本

概念

和其他编程语言一样,函数作为一种封装代码块,以提高代码复用性和可维护性的存在。
记住一点,先定义,再使用

定义

shell 函数的创建方式

  • function 函数名 空格{
    xxxx
    return 返回码(不指定时,以函数内最后一条命令的返回码返回,一般来讲0代表成功,其他错误代表各种异常,根据实际情况设计返回码)
    }
  • 函数名 () 空格{
    xxx
    return 返回码
    }

调用函数

调用函数直接写函数名称即可,不要写(),如果有参数,直接写在函数名后面,多个参数以空格隔开(和脚本传参类似)。

综合脚本

#!/bin/bashfunction f1 {echo "调用了f1..."
echo "函数的参数:" $1
return 0
}f1 1111
if [[ $? -eq 0 ]]
then
echo "f1 执行成功"
else
echo "f1 执行失败"
fiecho "脚本的参数:" $1f2() {echo "调用了f2..."echo "函数f2 的参数:" $1return 9
}
f2 222
if [[ $? -eq 0 ]]
then
echo "f2 执行成功"
else
echo "f2 执行失败"
fi

执行脚本

bash function1.sh 9
调用了f1...
函数的参数: 1111
f1 执行成功
脚本的参数: 9
调用了f2...
函数f2 的参数: 222
f2 执行失败

相关文章:

Shell编程基础(十二)函数

函数 概念定义调用函数综合脚本 概念 和其他编程语言一样,函数作为一种封装代码块,以提高代码复用性和可维护性的存在。 记住一点,先定义,再使用 定义 shell 函数的创建方式 function 函数名 空格{ xxxx return 返回码&#x…...

【雕爷学编程】MicroPython动手做(33)——物联网之天气预报3

天气(自然现象) 是指某一个地区距离地表较近的大气层在短时间内的具体状态。而天气现象则是指发生在大气中的各种自然现象,即某瞬时内大气中各种气象要素(如气温、气压、湿度、风、云、雾、雨、闪、雪、霜、雷、雹、霾等&#xff…...

Screens 4 for mac VNC客户端 强大的远程控制工具

Screens 4 for Mac 是一款功能强大的 VNC 客户端软件,为 Mac 用户提供了便捷的远程访问和控制解决方案。无论您是需要远程管理服务器、办公电脑,还是需要远程协助他人解决问题,Screens 4 都是您的理想选择。 Screens 4 for Mac具备简洁直观的…...

搜索与图论(三)

一、最小生成树 1.1Prim算法 朴素版Prim 一般用于稠密图 算法流程: 集合表示当前已经在连通块的点 1.初始化距离&#xff0c;把所有距离都初始化为正无穷 2.n次迭代,找到集合外距离最小的点 ->t 3.用t来更新其它点到集合的距离 #include<iostream> #include&…...

阿里云“通义千问”开源,可免费商用

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 阿里云成为国内首个加入大模型开源行列的大型科技企业。就在昨天&#xff0c;阿里云公开表态&#xff0c;把自家的通义千问大模型开源。 阿里云把通用70亿参数模型&#xff0c;包括Qwen-7B和对话模…...

23.7.31 牛客暑期多校5部分题解

E - Red and Blue and Green 题目大意 构造一个长度为 n n n 的序列&#xff0c;满足 m m m 个条件&#xff0c;每个条件包含三个数 l , r , w l,\space r,\space w l, r, w&#xff0c;表示区间左端点&#xff0c;区间右端点&#xff0c;这个区间的逆序对数的奇偶性&…...

Python爬虫的学习day02 requests 模块post 函数, lmxl 模块的 etree 模块

1. requests 模块post 函数 1.1 post 函数的参数 &#xff08;简单版&#xff09; 参数1&#xff1a; url 网络地址 参数2&#xff1a; data 请求数据 &#xff08;一般数据是 账号&#xff0c;密码&#xff09; 参数3&#xff1a; headers 头请求 &#xff08…...

客户流失分析预测案例 -- 机器学习项目基础篇(7)

客户流失 它是指现有的客户、用户、订阅者或任何类型的回头客停止与公司开展业务或结束与公司的关系。 客户流失的类型 合同客户流失&#xff1a;当客户签订了服务合同并决定取消服务时&#xff0c;例如有线电视&#xff0c;SaaS。自愿流失&#xff1a;当用户自愿取消服务时…...

uniapp中我使用uni.navigateTo跳转webview页面传参,但是接收的参数只有一半。

在uniapp中使用uni.navigateTo跳转webview页面传参时&#xff0c;可能会遇到接收的参数只有一半的情况。这可能是因为在跳转时&#xff0c;url的长度超过了限制。为了解决这个问题&#xff0c;可以使用encodeURIComponent和decodeURIComponent进行编码和解码。 具体的解决办法…...

使用kaminari,在列表页实现分页功能

安装 1. bundller 大于1的话&#xff0c;可以使用这个版本 gem install kaminari -v 0.16.3 或者 gem kaminari 2. 使用命令&#xff1a; $ bundle install 3. 然后使用这个命令可以创建一个config文件 $ rails g kaminari:config 4. 重新启动服务器 bundle exec rail…...

Android 性能调优之bitmap的优化

背景 Android开发中&#xff0c;加载图片过多、过大很容易引起OutOfMemoryError异常&#xff0c;即我们常见的内存溢出。因为Android对单个应用施加内存限制&#xff0c;默认分配的内存只有几M&#xff08;具体视不同系统而定&#xff09;。而载入的图片如果是JPG之类的压缩格…...

HOT74-数组中的第K个最大元素

leetcode原题链接&#xff1a;数组中的第K个最大元素 题目描述 给定整数数组 nums 和整数 k&#xff0c;请返回数组中第 k 个最大的元素。请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O…...

类与对象【中】

欢迎来到Cefler的博客&#x1f601; &#x1f54c;博客主页&#xff1a;那个传说中的man的主页 &#x1f3e0;个人专栏&#xff1a;题目解析 &#x1f30e;推荐文章&#xff1a;题目大解析2 目录 &#x1f449;&#x1f3fb;类的默认6个成员函数&#x1f449;&#x1f3fb;构造…...

uni-app:实现列表单选功能

效果图&#xff1a; 核心解析&#xff1a; 一、 <view class"item_all" v-for"(item, index) in info" :key"index"><view classposition parameter-info text-over :classitem.checked?"checked_parameter":""…...

vue中axios二次封装并发起网络请求配置

1.安装axios npm i axios 2.导入 //对axios进行二次封装 import axios from "axios"// 创建axios实例&#xff0c;其实request就是axiosconst requests axios.create({// 发请求的时候自动出现api// baseURL:"api",// 请求超时的时间timeout:5000, })…...

开源全文搜索引擎汇总

1、Apache Lucene Java 全文搜索框架 许可证:Apache-2.0 开发语言:Java 官网:https://lucene.apache.org/。Apache Lucene 是完全用 Java 编写的高性能、功能齐全的全文检索引擎架构,提供了完整的查询引擎和索引引擎、部分文本分析引擎。目的是为软件开发人员提供一个简单…...

gitlab CI/CD 安装 gitlab runner

一、为什么需要安装gitlab runner &#xff1f; 极狐GitLab Runner 极狐GitLab Runner 是在流水线中运行作业的应用&#xff0c;与极狐GitLab CI/CD 配合运作。 说白了就是你部署的一个agent。 二、如何安装&#xff1f; 1.介绍通过helm部署github runner 2.helm添加仓库 h…...

服务器中了malox勒索病毒后怎么办怎么解决,malox勒索病毒解密数据恢复

服务器遭受Malox勒索病毒攻击后&#xff0c;快速解密并恢复数据至关重要&#xff0c;以便减少更大的经济损失。近期&#xff0c;新的一波malox勒索病毒正在肆虐&#xff0c;我们收到很多企业的求助&#xff0c;企业的服务器数据库遭到了malox勒索病毒攻击&#xff0c;导致系统内…...

Python小白学习:超级详细的字典介绍(字典的定义、存储、修改、遍历元素和嵌套)

目录 一、字典简介1.1 创建字典1.2 访问字典中的值1.3 添加键值对1.4 修改字典中的值实例 1.5 删除键值对1.6 由多个类似对象组成的字典1.7 使用get()访问值1.8 练习题 二、遍历字典2.1 遍历所有键值对实例 2.2 遍历字典中的所有键2.3 按照特定顺序遍历字典中的所有键2.4 遍历字…...

word转pdf两种方式(免费+收费)

一、免费方式 优点&#xff1a;1、免费&#xff1b;2、在众多免费中挑选出的转换效果相对较好&#xff0c;并且不用像openOffice那样安装服务 缺点&#xff1a;1、对字体支持没有很好&#xff0c;需要安装字体库或者使用宋体&#xff08;对宋体支持很好&#xff09;2、对于使…...

温柔沟通术,稳住实习候选人的心w

为什么高冷的企业在校招中容易丢分&#xff1f; 在金融与科技企业的校招抢人大战中&#xff0c;HR常发现一个现象&#xff1a;有些各方面条件都极佳的应届生&#xff0c;在面试流程过半时突然“消失”了。深究其原因&#xff0c;往往不是因为薪资或岗位本身&#xff0c;而是因…...

别再死记硬背了!用‘IP地址与运算’这个技巧,5分钟搞懂子网掩码和网络地址

子网掩码实战&#xff1a;5分钟掌握IP与运算的核心技巧 网络工程师面试时总会被问到"如何快速计算网络地址"&#xff0c;而很多初学者面对子网掩码和IP地址的二进制转换就头疼不已。其实有个被大多数教材忽略的技巧——IP地址主机位置零法&#xff0c;能让你不用完整…...

别再自己写弹窗了!UniApp内置的showLoading、showToast、showModal,5分钟搞定App常用交互

UniApp内置交互API实战&#xff1a;5分钟打造专业级弹窗体验 第一次接触UniApp开发时&#xff0c;我花了整整两天时间调试一个自定义加载动画——结果在iOS上卡顿&#xff0c;在Android上闪退。直到发现showLoading这个内置API&#xff0c;三行代码就解决了所有问题。这段经历让…...

Photoshop图层批量导出终极指南:5分钟掌握高效工作流

Photoshop图层批量导出终极指南&#xff1a;5分钟掌握高效工作流 【免费下载链接】Photoshop-Export-Layers-to-Files-Fast This script allows you to export your layers as individual files at a speed much faster than the built-in script from Adobe. 项目地址: http…...

Allegro PCB设计自查清单:用Quick Reports快速搞定投板前的关键检查(附Dangling Line定位技巧)

Allegro PCB设计投板前终极自查指南&#xff1a;用Quick Reports构建高效质检流水线 在PCB设计领域&#xff0c;最后的5%往往消耗50%的精力。当设计进入投板前的关键阶段&#xff0c;工程师们常陷入两难&#xff1a;要么因过度谨慎反复全盘检查导致项目延期&#xff0c;要么因遗…...

如何打破课堂限制?JiYuTrainer让您的电脑重获自由

如何打破课堂限制&#xff1f;JiYuTrainer让您的电脑重获自由 【免费下载链接】JiYuTrainer 极域电子教室防控制软件, StudenMain.exe 破解 项目地址: https://gitcode.com/gh_mirrors/ji/JiYuTrainer 当您在计算机课堂上被极域电子教室完全控制时&#xff0c;是否感到学…...

暗黑破坏神2存档修改器:释放你的游戏创造力

暗黑破坏神2存档修改器&#xff1a;释放你的游戏创造力 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 你是否曾想过&#xff0c;如果能让暗黑破坏神2中的角色拥有完美的装备组合&#xff1f;如果…...

不止于解题:聊聊猪圈密码、圣堂武士密码和标准银河字母背后的历史与趣闻

不止于解题&#xff1a;猪圈密码、圣堂武士密码与标准银河字母的文化考古 当你在CTF竞赛中第一次遇到那些神秘的几何符号时&#xff0c;是否曾好奇过这些图形背后的故事&#xff1f;从共济会的秘密集会到《我的世界》游戏中的彩蛋&#xff0c;图形密码早已超越了单纯的加密工具…...

Perplexity搜索功能隐藏入口全解锁:9个未公开Pro技巧,第7个连官方文档都没写!

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity搜索功能隐藏入口全解锁&#xff1a;现象与价值重估 Perplexity.ai 的公开界面长期以简洁问答框为核心&#xff0c;但其底层实际嵌套了多组未在UI中显式暴露的高级搜索能力——包括语义过滤、…...

告别网络限制!手把手教你离线安装ModHeader插件(附最新4.3.8版本下载)

开发者必备&#xff1a;ModHeader插件安全离线安装全指南 对于经常需要调试API接口的开发者来说&#xff0c;能够自由修改HTTP请求头是刚需。ModHeader作为Chrome浏览器上最受欢迎的请求头管理工具之一&#xff0c;却因为网络访问限制让不少国内开发者望而却步。本文将为你彻底…...