区别Shell命令与Shell函数
- Shell命令是构成Shell脚本的基础单位,包括预定义的操作系统命令和外部工具。
- Shell函数是用户自定义的代码块,用于封装复杂操作,提高代码的模块化和复用性。
- 命令直接作用于Shell环境,而函数则是在Shell环境中定义并调用的,提供了更灵活的编程能力。
自定义函数
基本语法
[ function ] funname[()] 注意只能省略其中一个
{
Action;
[return int;]
}
经验技巧
- 必须在调用函数地方之前,先声明函数,shell脚本是逐行运行。不会像其它语言一样先编译。
- 函数返回值,只能通过$?系统变量获得,可以显示加:return返回,如果不加,将以最后一条命令运行结果,作为返回值。return后跟数值n(0-255)。
案例实操
计算两个输入参数的和。
feng@ubuntu:~$ vim fun.sh
写入以下内容。
#!/bin/bash
sum()
{
SUM=$[$1+$2]
echo $SUM
}
read -p "请输入第一个数值: " n1
read -p "请输入第二个数值: " n2
sum $n1 $n2
保存退出。
feng@ubuntu:~$ chmod 777 fun.sh
feng@ubuntu:~$ ./fun.sh
请输入第一个数值: 2
请输入第二个数值: 5
7