1、什么是函数
把经常反复调用的代码封装起来起一个名字。当用到这段代码时直接调用函数,可以节省时间和空间. 通过使用函数,可以使脚本代码更加简洁,增强易读性,提高Shell脚本的执行效率
2、如何定义函数
——在脚本里定义
2.1、定义函数的方法/格式
(1)格式1
function 函数名 {
命令序列
……………………..
}
(2)格式2
——这种方法较常用
函数名() {
命令序列
……………………..
}
2.3、使用函数时的规划
(1)函数是先定义后调用
(2)函数名相同,后面定义的函数生效
(3)在函数体里定义的变量是局部变量,只能在函数体内使用;在函数体外定义的变量是全局变量,任意函数都能使用
(4)函数名区分大小写
(5)函数之间可以互相调用
3、如何使用函数
(1)直接使用函数名调用
(2)如果函数能处理位置参数,以”函数名参数1 参数2 ……….”
(3)可以根据需要多次调用
4、如何给函数传数据(传值)
格式:
函数名值1 值2 …..
——传递的值作为函数的位置变量
示例:
任意个数的数值相加
1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
sum(){
s=""
until [ $# -eq 0 ]
do
let s+=$1
shift
done
echo $s
}
sum $*
fork炸弹,仅13个字符,递归死循环,会产生海量进程,迅速耗尽系统资源
vim fork.sh
.( ) #定义.函数
{ #函数块开始
.|.& #递归调用.,若不成功,则后台掉用.
} #函数块结束
; #与下一条执行语句分隔
. #调用该函数