函数
函数介绍:
shell编程和其他编程语言一样,有系统函数,也可以自定义函数。系统函数,我们这里就介绍两个。
1.系统函数
basename 基本语法
功能:返回完整路径最后 / 的部分,常用于获取文件名
basename [pathname] [suffix]
basename [string] [suffix] (功能描述:basename命令会删掉所有的前缀包括最后一个‘/’字符,然后将字符串显示出来)
选项:
suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉
dirname基本语法
功能:返回完整路径最后/的前面的部分,常用于返回路径部分
dirname 文件绝对路径(功能描述:从给定的包含绝对路径的文件名中去除文件名(非目录部分),然后返回剩下的路径(目录的部分))
应用实例:
案例1:请返回/home/aaa/test.txt的test.txt部分
案例2:
请返回/home/aaa/test.txt的/home/aaa
2.自定义函数
基本语法:
[ function ] funname [()]
{
action
[return init]
}
调用函数:funname [值]
应用实例:
案例1:计算输入两个参数的和(read),getsum
3.shell编程综合案例
需求分析:
1)每天凌晨2:10备份数据库 db2到 /data/backup/db
2)备份开始和备份结束都会输出相应的提示信息
3)备份后的文件要求以备份时间为文件名,并打包成.tar.gz的形式,比如2018-03-12_230201.tar.gz
4)在备份的同时,检查是否有10天前备份的数据库文件,如果有就将其删除。
编写一个shell脚本
思路分析:
代码实现: