43 lines
702 B
Markdown
43 lines
702 B
Markdown
|
### 概念
|
|||
|
- 一组命令集合或语句行程一段可用代码,这些代码块成为 shell 函数
|
|||
|
- 给这段代码起个名字,称为函数名,后续可以直接调用该段代码的功能
|
|||
|
|
|||
|
### 定义
|
|||
|
- 方法一
|
|||
|
```
|
|||
|
函数名()
|
|||
|
{
|
|||
|
command # 一堆命令的集合
|
|||
|
command
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
- 方法二
|
|||
|
```
|
|||
|
function 函数明()
|
|||
|
{
|
|||
|
command
|
|||
|
command
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### return
|
|||
|
- return 可以结束一个函数
|
|||
|
- return 默认返回函数中最后一个命令状态值,也可以给定参数值,0-256 之间
|
|||
|
- 如果没有 return 命令,函数将返回最后一个指令的状态退出值
|
|||
|
|
|||
|
### 调用
|
|||
|
- 命令行调用
|
|||
|
|
|||
|
### 函数传参
|
|||
|
```
|
|||
|
#! /bin/env bash
|
|||
|
|
|||
|
hello()
|
|||
|
(
|
|||
|
echo "hello"
|
|||
|
echo $1
|
|||
|
)
|
|||
|
|
|||
|
hello name
|
|||
|
```
|