13_Shell系统函数和自定义函数
一、系统函数
basename 获取文件名
#!/bin/bash
#basename 相对路径文件名
basename ./1.sh
#basename 绝对路径文件名
basename /tmp/1.sh
#basename 去除文件后缀名
basename /tmp/1.sh .sh
dirname 获取文件所在目录名
#!/bin/bash
#dirname 相对路径文件名
dirname ./1.sh
#dirname 绝对路径文件名
dirname /tmp/1.sh
二、自定义函数
自定义函数:
1、function 关键字可有可无
2、return 关键字可有可无,有只能返回数字
######函数定义######
#标准版
function 函数名()
{
命令
return 返回值
}
#简洁版
函数名()
{
命令
}
######函数调用######
#无参调用
函数名()
#有参调用
函数名() 参数1 参数2 ... 参数n
无参函数
#无参无返回值
demo1()
{
echo "无参无返回值函数打印"
}
demo1
#无参有返回值
demo2()
{
result="无参有返回值函数返回"
}
demo2
echo "函数执行结果:$?"
echo "函数返回变量: $result"
有参函数
参数处理 | 说明 |
---|---|
$n | $1-数1 $2-参数2 ${10}-参数10 |
$# | 参数个数 |
$* 和 $@ | 获取所有参数(略有不同) |
#!/bin/bash
demo3()
{
echo "参数1:$1"
echo "参数2:$2"
echo "参数10:${10}"
echo "参数总个数:$#"
echo "所有参数:$*"
}
demo3 1 2 3 4 5 6 7 8 9 10 11