Shell 函数库
1.为什么要定义函数库
经常使用的重复代码封装成函数文件
一般不直接执行,而是由其他脚本调用
2.编写一个函数库,该函数库实现以下几个函数。
- 1、加法函数:add
- 2、减法函数:reduce
- 3、乘法函数:multiple
- 4、除法函数:divide
函数库代码如下
[root@bgx shell]# cat base
#!/usr/bin/bash
add(){
echo "$(expr $1 + $2)"
}
reduce(){
echo "$(expr $1 - $2)"
}
multiple(){
echo "$(expr $1 \* $2)"
}
divide(){
echo "$(expr $1 / $2)"
}
调用函数库shell脚本如下
[root@bgx shell]# cat base_shell.sh
#!/usr/bin/bash
#加载函数库文件
source ./base
#调用函数,传入参数
add 100 100
reduce 100 20
multiple 100 20
divide 100 50
执行结果如下
[root@bgx shell]# sh base_shell.sh
200
80
2000
2
Shell 函数库的更多相关文章
- shell学习——关于shell函数库的使用
shell函数库的理解: 个人理解,shell函数库实质为一个脚本,脚本内包含了多个函数(函数具有普遍适用性). shell函数库的调用: 通过 . /path/lib/file.lib 或者 so ...
- 通用shell函数库
1.输出字体颜色库 #!/bin/bash export black='\E[0m\c' export boldred='\E[1;31m\c' export boldgreen='\E[1;32m\ ...
- shell脚本编程基础之自定义函数库
脚本编程知识点 ${#VAR_NAME}:引用变量中字符的长度 A="25 90 100 120": echo ${A#* }:针对A变量,#表示从左往右,*空格表示以空格为分隔符 ...
- shell 函数
1 shell函数的定义及其调用 shell函数有两种格式: function name { commands } name() { commands } 其中,name为函数名,commands为函 ...
- 标准C函数库的使用方法
本篇介绍若干经常使用的标准C函数的使用方法,主要介绍stdio(标准输入输出).math(数字函数库).time(时间函数库).stdlib(标准函数库)string(标准字符串函数)等. 最后更新 ...
- makefile笔记10 - makefile 函数库文件
函数库文件也就是对 Object 文件(程序编译的中间文件)的打包文件.在 Unix 下,一般是由命令"ar"来完成打包工作. 一.函数库文件的成员 一个函数库文件由多个文件组成. ...
- delphi的一个公用函数库
delphi的一个公用函数库 {********************************************** *** Name: PublicFunc; *** Author: l ...
- Linux C函数库参考手册
目录 第1章 字符测试函数 isalnum(测试字符是否为英文字母或数字) isalpha(测试字符是否为英文字母) isascii(测试字符是否为ascii码字符) isblank(测试字符是否为空 ...
- Linux C函数库大全
(1)字符测试函数 isalnum(测试字符是否为英文字母或数字) isalpha(测试字符是否为英文字母) isascii(测试字符是否为ASCII码字符) isblank(测试字符是否为空格字符) ...
随机推荐
- 使用 puppeteer 创建一个自动化导出 PDF 的服务
最近在基于 RAP2 做内网的一个 API 管理平台,涉及到与外部人员进行协议交换,需要提供 PDF 文档. 在设置完成 CSS 后已经可以使用浏览器的打印功能实现导出 PDF,但全手动,总是觉得不爽 ...
- UVA-11491 Erasing and Winning (单调队列)
题目大意:给一个数字(开头非0),拿掉其中的d个数字,使剩下的数字最大(前后顺序不能变). 题目分析:拿掉d个数字,还剩下n-d个数字.相当于从n个数字中按先后顺序选出n-d个数字使组成的数字最大,当 ...
- 兼容360模式自动播放视频【需要flvpalyer.swf】
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...
- iptable filter nat MASQUERADE snat dat
在这里,系统会根据IP数据包中的destination ip address中的IP地址对数据包进行分发.如果destination ip adress是本机地址,数据将会被转交给INPUT链.如果不 ...
- 012PHP文件处理——copy rename file set_include_path
<?php //copy rename file set_include_path /*file() 以行为单位返回数组 * */ /*$arr=file('b.txt'); foreach ( ...
- python自动化运维之路03
set集合 集合是一个无序的.不可重复的集合.主要作用有: 1.去重,把一个列表变成集合,就等于去重了. 2.关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作 创建.交集.并集.差集.对称 ...
- PostgreSQL逻辑复制槽
Schema | Name | Result data type | Argument data types | Type ------------+------------------------- ...
- Openlayers4中地图的导出
概述: 本文讲述Openlayers4中地图的导出,包括调用天地图切片跨域.Geoserver11 WMS跨域等. 效果: 导出图片 页面展示 实现代码: document.getElementByI ...
- 第24课 #pragma使用分析
#pragma是C语言留给编译器厂商进行扩展用的. 这个关键字在不同的编译器之间也许是不能够移植的. #pragma简介 #pragma message #pragma message打印的消息并不代 ...
- I.MX6 Manufacturing Tool V2 (MFGTool2) Emmc mksdcard.sh hacking
#!/bin/sh # 参考文章: # . MFGTool Emmc mksdcard.sh MFGTool Emmc mksdcard.sh comment # http://jordonwu.gi ...