shell 函数的参数和返回值

先来个例子吧!大家先想下回打印出什么“

示例1:

#!/bin/sh 


check()
{
	local rc=0
	if [ $rc -eq 0 ];then
		echo hello
		return 10
	fi
}

if check;then
	echo "return is 0"
else
	echo "return is 201"
fi

示例2:

#!/bin/sh 


check()
{
	local rc=0
	if [ $rc -eq 0 ];then
		echo hello
	fi
}

if check;then
	echo "return is 0"
else
	echo "return is 201"
fi

示例3:

#!/bin/sh 


check()
{
	local rc=0
	if [ $rc -eq 0 ];then
		echo hello
		return 0
	fi
}

if check;then
	echo "return is 0"
else
	echo "return is 201"
fi

3个例子都是对函数中返回值的判断;

示例1:答案:

hello
return is 201

示例2:

hello
return is 0


示例3:

hello
return is 0


由上面的例子可以说明:当函数正常执行完毕时和返回0时,为真;返回大于0的数;为假;

这里函数返回只能返回非负整数;不相信的话大家可以看看;

下面来讲下函数的定义:

check()
{
}

或者

function check() //有的书上说()可以省略,但是有时候我测试时,不管有没有有这种写法都有错误?不知道什么原因
{
}
这种写法出错的原因可能和SHELL有关 也就是#!/bin/sh 有时候改成其他就没有问题,但是 第一种一直没有问题~
。。。。。。。。。。。。。。。。。。。。。。。。。。。待续~ 






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值