Linux中提供了很多内置的函数,但有时我们需要根据自己的需求来创建自定义函数。下面介绍一下关于shell编程中的自定义函数。
1、函数定义function hello(){ echo "Hello!!" }
或
hello(){ echo "Hello!!" }
2、函数调用 [tough@toughhou shell]$ cat fun.sh #!/bin/bashfunction hello(){ echo "Hello!!" }hello
[tough@toughhou shell]$ sh fun.sh Hello!!
#函数需要先定义,后使用,否则出错 [tough@toughhou shell]$ cat fun1.sh #!/bin/bashhello #调用未定义的函数导致出错
function hello(){ echo "Hello!!" }[tough@toughhou shell]$ sh fun1.sh fun1.sh: line 2: hello: command not found
3、参数传递 [tough@toughhou shell]$ cat hello.sh #!/bin/bashhello(){ echo "Hello, $2" #此处的$2是调用函数hello时传递进来的参数}
#此处的$2,$1是调用hello.sh时传递进来的参数
hello $2 $1[tough@toughhou shell]$ sh hello.sh Tough1 Tough2 Hello, Tough1
4、函数文件引用 [tough@toughhou shell]$ cat helloFun hello(){ echo "Hello!!" }
[tough@toughhou shell]$ more invoke.sh #!/bin/bash. ./helloFun #此处引用了helloFun函数文件hello #此处调用了helloFun函数文件中的hello函数
[tough@toughhou shell]$ sh invoke.sh Hello!!