shell脚本进阶篇(三)
函数
-
函数由两部分组成 :函数名和函数体
-
格式 :
- 语法一 :
f_name (){
...函数体...
}
- 语法二 :
function f_name {
...函数体...
}
- 语法三 :
function f_name(){
...函数体...
}
-
函数function是由若干条shell命令组成的语句块,实现代码重用和模块化编程
-
函数function并不是一个单独的进程,不能独立运行;它是shell程序的一部分
-
函数与shell程序的区别 :
- shell程序在子shell中运行
- 函数在当前shell中运行
-
删除shell函数 :unset function_name
示例 :
切换至 etc 目录
[root@CentOS7 data]# fk(){
> cd /etc
> }
[root@CentOS7 data]# fk
[root@CentOS7 etc]#
删除该函数
或者用户退出系统后,自动删除
[root@CentOS7 etc]# unset fk
[root@CentOS7 etc]# fk
bash: fk: command not found...
Similar command is: 'fc'
[root@CentOS7 etc]#
在脚本中定义及使用函数
- 函数在使用前必须定义,因此应将函数定义放在脚本开始部分,直至shell首次发现它后才能使用
- 调用函数仅使用其函数名即可
使用函数检查磁盘最大使用率
[root@CentOS7 etc]# vim max_disk.sh
#!/bin/bash
# Maximum disk occupancy
maxdf()
{
echo `df -h |grep "^/dev/sd"