shell 自定义函数
时间: 2023-10-14 17:31:24 浏览: 82
在Shell中,可以使用`function`或者简写为`()`来定义函数。例如,定义一个名为`hello`的函数:
```bash
function hello {
echo "Hello World!"
}
```
或者
```bash
hello() {
echo "Hello World!"
}
```
然后就可以在脚本中调用这个函数:
```bash
hello
```
输出结果为:
```
Hello World!
```
函数也可以接受参数,例如:
```bash
function greet {
echo "Hello, $1!"
}
greet "Alice"
```
输出结果为:
```
Hello, Alice!
```
函数的参数通过`$1`、`$2`等变量来访问,`$0`表示函数本身的名字。例如:
```bash
function foo {
echo "The name of this function is $0"
echo "The first argument is $1"
}
foo "bar"
```
输出结果为:
```
The name of this function is foo
The first argument is bar
```
注意,函数内部的变量默认是全局的,如果要定义局部变量,需要使用`local`关键字。例如:
```bash
function count {
local i=0
while [[ $i -lt $1 ]]; do
echo "$i"
((i++))
done
}
count 5
```
输出结果为:
```
0
1
2
3
4
```
阅读全文