shell自定义函数
Posted 七色彩虹k
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell自定义函数相关的知识,希望对你有一定的参考价值。
函数调用
通常将函数看成是脚本中的一段代码,在使用函数前必须先定义该函数,使用时利用函数名直接调用。
例:编写脚本func_script,内容如下。
#!/bin/bash
REPEAT=3
fa()
echo "Now fa function is starting..."
echo
fb()
i=0
echo "And now the fb bebins."
sleep 1
while [ $i -lt $REPEAT ]
do
echo "---functions---"
echo "-----are-------"
echo "------fb-------"
echo
i=$((i+1))
done
echo "This main script is starting..."
fa
fb
echo "main script ended."
执行该脚本
运行结果
shell脚本如何自定义函数
在写程序时,经常会用到函数,一般开发工具拥有丰富的函数库。但有时还需要根据自己的需要自定义函数满足我们的需求。
在Linux中,写shell脚本也一样,有时会用到自定义函数。
函数,最简单的定义为:将一组命令集或语句形成一个可用块,这些块称为函数。
1、定义函数的格式:
- function-name ( ){
- command1
- ........
- }
或
- #函数名前面也可以加上function关键字
- function function-name( ) {
- command1
- ........
- }
2.函数调用
以下是一个函数的脚本实例:
- #!/bin/bash
- function hello(){ #声明函数
- echo "Hello!" #函数的主体,输出"Hello!"
- } #函数结束
- hello #调用函数
3.参数传递
向函数传递参数就像在脚本是使用变量位置$1,$2,$3...$9
以下是一个传递参数的实例:
- #!/bin/bash
- function hello(){
- echo "Hello! The first parameter is ‘$1‘."
- }
- hello good
#该脚本执行的结果是: Hello! The first parameter is ‘good‘.
4.函数文件
保存函数的文件,用以上的例子写成一个函数文件如下:
- #!/bin/bash
- function hello ( ){
- echo "Hello!"
- return 1
- }
上面的hellofunction文件就是一个函数文件,可通过另一个脚本来调用
- #!/bin/bash
- . hellofunction #调用函数文件,点和hellofunction之间有个空格
- hello #调用函数
5.载入和删除
用set查看已载入的函数
用unset function-name 取消载入
举例如下:
- #!/bin/bash
- #hellof
- . hellofunction
- unset hello
- hello #因为已经取消载入,所以会出错
以上是关于shell自定义函数的主要内容,如果未能解决你的问题,请参考以下文章