一、基本语法:
function name() {
statements
[return value]
}
1.function是 Shell 中的关键字,专门用来定义函数;
2.name是函数名;
3.statements是函数要执行的代码,也就是一组语句;
4.return value表示函数的返回值,其中 return 是 Shell 关键字,专门用在函数中返回一个值;这一部分可以写也可以不写。
二、函数的调用
函数调用格式:
方法1:value_name=`function_name [arg1 arg2 … ]`
函数的所有标准输出都传递给了主程序的变量
方法2:function_name [arg1 arg2 … ]
echo $?
#!/bin/bash
function fun(){
echo "hello world"
grep "$1" /etc/passwd
echo $2
echo $3
echo $4
return 1
}
#命令置换是把标准输出的内容赋值给ret
ret=`fun linux 1 5 8`
echo "******$ret"
#$?获取函数的返回值
#echo $?
获取函数的返回的状态
三、变量的作用域
全局作用域:在脚本的其他任何地方都能够访问该变量。
局部作用域:只能在声明变量的作用域内访问。
声明局部变量的格式:Local variable_name =value
#!/bin/bash
function fun(){
#local val=100
val=100
echo $val
return 1
}
fun
echo "*****$val"