Linux操作系统shell与函数详解
shell和函数的定义
1. linux shell 函数
将一组命令集或语句形成一个可用的块, 这些语句块称为函数。
2. shell 函数的组成
函数名:函数名字,注意一个脚本中函数名要唯一,否则会引起调用函数紊乱。
函数体: 函数内部命令的集合,实现一个业务的功能。
3. shell 函数定义的格式
function 函数名() # function可以省略,注意()内部不带任何参数。
{
命令1
命令2
. . .
}
函数使用方法举例
1.函数定义及引用实例一: 最简单的定义及引用
[liu@WLJY01 myscript]$ sh func_1.sh
演练函数的定义及引用方法:
welcome,now time is Wed Aug 12 16:01:58 CST 2015
实际环境操作:

执行结果:

2.函数定义及引用实例二:向函数传递参数演练
向函数传递参数就像在一般脚本中使用特殊变量$ 1 , $ 2 . . . $ 9一样,函数取得所传参数后,最好先在函数内重新设置变量保存所传的参数。
程序功能:向函数传递一个变量值,对该变量值进行相关的运算,并输出结果。
[liu@WLJY01 myscript]$ sh func_2.sh
演练函数内参数的传递的方法(注意变量的接收方法)
符合函数要求的参数个数
10+90=100
实际环境操作:

执行结果:

3. 函数文件和脚本文件不在同一个文件中,如何调用该函数?
程序功能:输入一个文件的路径,然后打印出这个文件的MD5摘要信息。
[liutaostdio@WLJY01 myscript]$ cat func_3.sh # 函数文件
[liutaostdio@WLJY01 myscript]$ sh func_call.sh # 脚本文件
请输入一个文件名:test1.sh
test1.sh 的md5摘要为:5615ac3ce36ec58748a80649c3599d88 test1.sh
请输入一个文件名:test2.sh
test2.sh 的md5摘要为:4446b536dff610ea440663147914c52b test2.sh
请输入一个文件名:ttt.sh
ttt.sh 的md5摘要为:5615ac3ce36ec58748a80649c3599d88 ttt.sh
注意函数导入的方法:
. 空格符 文件名
实际环境操作:


执行结果:

原文链接:http://www.maiziedu.com/wiki/linux/array/
Linux操作系统shell与函数详解的更多相关文章
- (笔记)Linux下的ioctl()函数详解
我这里说的ioctl函数是指驱动程序里的,因为我不知道还有没有别的场合用到了它,所以就规定了我们讨论的范围.写这篇文章是因为我前一阵子被ioctl给搞混了,这几天才弄明白它,于是在这里清理一下头脑. ...
- Linux下的ioctl()函数详解
我这里说的ioctl函数是指驱动程序里的,因为我不知道还有没有别的场合用到了它,所以就规定了我们讨论的范围.写这篇文章是因为我前一阵子被ioctl给搞混了,这几天才弄明白它,于是在这里清理一下头脑. ...
- Linux C 中 fork() 函数详解
一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork() 函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同 ...
- [fork]Linux中的fork函数详解
---------------------------------------------------------------------------------------------------- ...
- 【Linux 进程】fork函数详解
一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同, ...
- Linux操作系统文件系统基础知识详解
一 .Linux文件结构 文件结构是文件存放在磁盘等存贮设备上的组织方法.主要体现在对文件和目录的组织上. 目录提供了管理文件的一个方便而有效的途径. Linux使用标准的目录结构,在安装的时候,安装 ...
- Linux内核中kzalloc函数详解
**************************************************************************************************** ...
- Linux系统调用--mmap/munmap函数详解【转】
转自:http://www.cnblogs.com/leaven/archive/2011/01/14/1935199.html http://linux.chinaunix.net/techdoc/ ...
- linux脚本Shell之awk详解(二)
三.printf的使用 print format 生成报表 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c ...
随机推荐
- CSS3--选择器
子元素选择器: div>p{background:yellow:} 相邻的后兄弟选择器(必须相邻) h1+p{padding-top:20px:} 后兄弟选择器(同级的当前元素后面的元素) di ...
- 在ASP.NET中引用自定义提示框
在html网页中自定义提示框 正文: 在一般的B/S架构中项目,与用户的交互信息是非常重要的.在一般的情况下,设计人员都在把用户信息呈现在html中,用div和span去弹出相关信息.对于一般的情况而 ...
- 咏南中间件+开发框架支持最新的DELPHI XE10.1(BERLIN) UPDATE1
咏南中间件+开发框架支持最新的DELPHI XE10.1(BERLIN) UPDATE1 购买提供:中间件源码,价格十分优惠!有意者请向本人索取演示程序! 附带福利(赠送): CS开发框架源码BS开发 ...
- 用sql从一张表更新数据到另外一张表(多表数据迁移)
update TBL_1 A, TBL_2 B, TBL_3 Cset a.email=c.email_addrwhere a.user_id=b.user_id and b.un_id=c.un_i ...
- 云计算和大数据时代网络技术揭秘(十二)自定义网络SDN
软件定义网络——SDN SDN是网络技术热点,即软件定义网络,OpenFlow是实现SDN思想的一个框架标准, open是指公开.开放,具体为控制平面的规则由各个通信厂家自定义变为公开的技术标准, f ...
- 【Linux】LAMP环境的搭建
LAMP定义 LAMP指的Linux(操作系统).ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建 ...
- adb server is out of date killing... 的解决办法
是adb server端口被占用了 你先执行adb nodaemon server ,查看adb server的端口是多少 1 2 C:\Users\xxxx>adb nodaemon serv ...
- Asp.Net 基础理论
WebForm是微软开发的一款产品,它将用户的请求和响应都封装为控件.让开发者认为自己是在操作一个windows界面.极大地提高了开发效率. 在学习WebForm时,其知识量比WinForm要多,在实 ...
- JavaScript-setTimeout
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- python基础整理笔记(四)
一. python 打开文件的方法 1. python中使用open函数打开文件,需要设定的参数包括文件的路径和打开的模式.示例如下: f = open('a.txt', 'r+') 2. f为打开文 ...