因为shell会解释用户输入的命令,所以可以在命令行上直接定义一个函数。有两种方法。
- 采用单行方式定义函数:
$ function divem { echo $[ $1 / $2 ]; }
$ divem 100 5
20
$
当在命令行上定义函数时,必须记得在每个命令后面加个分号,这样shell就能知道在哪里是命令的起止了。
$ function doubleit { read -p "Enter value: " value; echo $[
$value * 2 ]; }
$
$ doubleit
Enter value: 20
40
$
- 采用多行方式来定义函数。在定义时,bash shell会使用次提示符来提示输入更多命令。用这种方法,不用在每条命令的末尾放一个分号,只要按下回车键就行。
$ function multem {
> echo $[ $1 * $2 ]
> }
$ multem 2 5
10
$
在函数的尾部使用花括号,shell就会知道已经完成了函数的定义。