Linux之函数应用实例--加法器

一、创建一个对2个整数求和的加法器

首先,定义了一个名为 adder 的 Bash 函数,该函数接受两个参数 $1 和 $2 并输出它们的和。

function adder {

echo $[ $1+$2 ]

}

注意:

  1. function 关键字是可选的。在 Bash 中,可以简单地使用 adder() 语法来定义函数。
  2. $[ expression ] 是一种旧式的算术扩展方式,它允许在 shell 脚本中进行算术计算。现在的 Bash 脚本通常使用 $(( expression )) 来进行算术扩展,因为它提供了更好的可读性和一些额外的功能。

然后,查询函数的类型:type adder

type命令用于显示 shell 命令或函数是如何被定义的。

运行type adder  时,Bash 输出以下信息:

adder is a function 

adder ()

{

echo $[ $1+$2 ]

}

 这告诉我们:

  • adder 是一个函数。
  • 函数 adder 的定义是显示给我们的,包括它的参数和执行的命令。

二、新建函数mkcd(),用来创建一个目录,并切换到此目录

\

这是一个在 Bash shell 中定义的简单函数,用于创建目录(使用 mkdir)并立即切换到新创建的目录(使用 cd)。下面我将逐步解释这个脚本:

1.定义函数

mkcd() {

mkdir $1 

cd $1 

}

 这里定义了一个名为 mkcd 的函数。函数的定义使用 () {} 包围,并在其中包含了要执行的命令。函数接受一个参数($1),该参数将被用作目录名。

  • mkdir $1:使用 mkdir 命令创建一个新目录,目录名由传递给函数的第一个参数($1)指定。
  • cd $1:使用 cd 命令切换到新创建的目录。

2.调用函数

mkcd /opt/newdir1

 这里调用了之前定义的 mkcd 函数,并传递了 /opt/newdir1 作为参数。因此,mkdir 命令会尝试在 /opt/ 目录下创建一个名为 newdir1 的新目录,然后 cd 命令会切换到这个新目录。

3.验证目录切换

[root@localhost newdir1]# pwd

/opt/newdir1

 pwd 命令用于打印当前工作目录的完整路径。输出 /opt/newdir1 表明我们已经成功切换到了新创建的目录。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/12677.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

近程无人机平台技术体系

近程无人机平台技术体系 1、技术体系1.1、专用技术体系固定翼技术体系旋翼技术体系复合翼技术体系扑翼技术体系倾转旋翼技术体系1.2、通用技术体系2、固定翼技术体系2.1、固定翼无人机介绍2.2、优势与局限2.3、固定翼专用体系介绍3、旋翼技术体系3.1、旋翼无人机介绍3.2、优势与…

前端 JS 经典:数组去重万能方法

前言:只需要掌握这一个方法,就可以对有任何重复的数据数组,进行去重了。 可以自己思考下,怎么对以下对象数组去重: const arr [{ a: 1, b: 2 },{ b: 2, a: 1 },{ a: 1, b: 2, c: { a: 1, b: 2 } },{ b: 2, a: 1, c:…

Geotrust哪种通配符证书800

Geotrust是成立了几十年的CA认证机构,每年都会通过WebTrust审计,旗下拥有各种类型的SSL数字证书产品,例如单域名SSL证书、多域名SSL证书和通配符SSL证书等。而为了更好地区分SSL证书产品,Geotrust旗下还分了几个子品牌&#xff0c…

解决项目下的lib包没有打进jar的问题

背景 项目在本地运行正常,发布到测试环境就不行,测试环境报缺少lib包下的类 解决方案 在项目的 pom.xml 文件中 <build></build> 标签下的 <resources></resources>标签中&#xff0c;加入以下代码&#xff0c;如&#xff1a; <build><res…

电池的一些UL认证标准

1、如今手机使用频率越来越高&#xff0c;充电器广泛地应用于交通上&#xff0c;为消费者提供充电的方便&#xff0c;汽车上的车充与我们产生了密切的联系&#xff0c;如果车充质量不好&#xff0c;可能会导致严重的后果&#xff0c;因此UL 2089标准着重于防止车充电击、燃烧&a…

MySQL存储引擎介绍

查看MySQL数据库中创建表的信息 如上图所示&#xff0c;当我们使用命令show create table server_info\G;可以显示我们所创建的表的信息&#xff0c;只显示两个字段&#xff0c;第一个字段是Table 即是创建的表的名称&#xff0c;第二个字段是Create Table即是创建的表的字段的…

Python中logging模块的使用

在Python中&#xff0c;logging模块提供了一个灵活的日志记录系统&#xff0c;用于将程序的输出信息分门别类地发送到不同的目的地。Logger对象是这个系统的核心&#xff0c;它负责创建日志消息。默认情况下&#xff0c;如果没有特别配置&#xff0c;Logger会将日志输出到标准错…

Redis过期删除策略和内存淘汰策略有什么区别?

Redis过期删除策略和内存淘汰策略有什么区别&#xff1f; 前言过期删除策略如何设置过期时间&#xff1f;如何判定 key 已过期了&#xff1f;过期删除策略有哪些&#xff1f;Redis 过期删除策略是什么&#xff1f; 内存淘汰策略如何设置 Redis 最大运行内存&#xff1f;Redis 内…

buildroot添加ssh功能

在制作了自己的buildroot生成的根文件系统之后&#xff0c;是没有ssh服务的&#xff0c;需要自行添加。 在buildroot的menuconfig里&#xff1a; Target packages -> Networking applications -> openssh 重新编译&#xff0c;还不能通过电脑连接&#xff0c;还需配置并…

xorg.conf 设置 集显 独显 英伟达 Ubuntu 风扇调速

使用集显做显示&#xff0c;使用独显做机器学习&#xff0c;那么xorg.conf如何配置&#xff1f; 如果配不好&#xff0c;那么会卡在欢迎登录界面&#xff0c;据说也会限制风扇调速的功能。 既然GPT时代了&#xff0c;那么我们就用AI加速一下&#xff0c;直接lspci | grep -i v…

ANSYS许可监控​

在工程设计与仿真领域&#xff0c;ANSYS软件作为行业翘楚&#xff0c;为企业提供了强大的支持。然而&#xff0c;随着业务规模的扩大和软件版本的升级&#xff0c;如何有效地监控ANSYS许可证的使用情况&#xff0c;确保合规性和资源的高效利用&#xff0c;成为企业面临的重要问…

react 图片没有加载出来的问题

react 图片没有加载出来的问题 我原来是这样写的 <Layout><Sider><imgsrc"../images/login/topdivbg20221202.png"/></Sider><Content><Menu onClick{onClick} selectedKeys{[current]} mode"horizontal" it…

RustGUI学习(iced/iced_aw)之扩展小部件(十六):如何使用菜单menu部件来创建菜单栏?

前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第十六篇,主要讲述menu菜单部件的使用,会结合实…

如何进行事务处理

1、问题背景 在数据库存储系统中&#xff0c;事务处理是一种保证多个数据库操作作为单个逻辑单元执行的技术。事务处理可以确保数据的一致性、完整性和隔离性。 在使用 Google Cloud Datastore 时&#xff0c;可以使用 datastore.transaction() 函数来进行事务处理。datastor…

水离子雾化壁炉与会所房间的氛围搭配

水离子雾化壁炉在会所房间的氛围搭配可以为房间增添舒适、温馨和现代感&#xff0c;以下是一些建议&#xff1a; 主题定位&#xff1a; 根据会所房间的主题和定位选择合适的水离子雾化壁炉款式和设计风格。可以是现代简约、欧式古典或是豪华奢华&#xff0c;确保与房间整体风格…

富唯智能复合机器人:CNC铝块上下料安全新标准

在CNC铝块加工过程中&#xff0c;上下料环节的安全问题一直是企业关注的焦点。富唯智能复合机器人的应用&#xff0c;为这一环节树立了新的安全标准。 传统的上下料方式往往依赖于人工操作&#xff0c;存在着较大的安全隐患。而富唯智能复合机器人采用先进的视觉识别技术和精准…

本机搭建RabbitMQ

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 一、下载安装包&#xff0c;搭建过程 二、重要概念介绍 三、创建用户 方式一&#xff1a;命令行 方式二&#xff1a;管理后台 3.1 创建用户 3.2 分配权限 3.3 提…

2024/5/15 英语每日一段

Many pet owners are now turning to pet insurance policies to avoid higher vet bills should something bad happen unexpectedly. But Carlson said that preventive veterinary care—like vaccination, parasite control and weight management—is "the best way …

工作高效记事软件是什么 好用的高效记事软件

阳光斜洒在办公桌上&#xff0c;我埋头于一堆杂乱的文件中&#xff0c;头脑里充斥着各种待办事项。电话铃声突然响起&#xff0c;是老板打来的&#xff0c;提醒我下午三点有个重要会议。挂断电话后&#xff0c;我赶紧拿起笔想在便签上记下&#xff0c;却发现桌面已经被各种便签…

详解NodeJS事件循环

官网&#xff1a;node官网-事件循环 浏览器中的事件循环是由HTML规范来定义&#xff0c;之后由各浏览器厂商实现的&#xff0c;而node中的事件循环的定义与实现均由libuv引擎完成。 node使用chrome v8引擎作为js解释器&#xff0c;v8引擎分析代码后&#xff0c;主线程立即执行…