shell怎么设置返回码
1、通过一个全局变量mResult设置返回值,返回值可以是字符串。示例代码如下:
#!/bin/sh
getReturnValue1()
{
mResult="my returns!!!!"
}
getReturnValue1
echo $mResult

2、看,运行上述脚本,可以得到设置的返回值。

3、利用return和$?来设置返回值,返回值是0~255之间的值。示例代码如下:
#!/bin/sh
getReturnValue2()
{
if [ $1 = "y" ];then
return 1
elif [ $1 = "n" ];then
return 0
else
return 128
fi
}
getReturnValue2 $1
echo $?

4、脚本运行结果如下图。$?表示上一条命令的退出状态码。以下是典型的几个退出状态码及其意义:
0:命令运行成功
1:通用未知错误
2:误用shell命令
126:命令不可执行
127:没有找到命令
128:无效退出参数
130:命令通过Ctrl+C终止
255:退出状态码越界

5、还可以将上述return换成echo,用echo可以设置成字符串返回值。示例代码如下:
#!/bin/sh
getReturnValue3()
{
if [ $1 = "y" ]
then
echo "Yes!"
else
echo "No!"
fi
}
returns=`getReturnValue3 $1`
echo $returns
returns=$(getReturnValue3 $1)
echo $returns

6、调用函数可以用`getReturnValue3 $1`,也可以用$(getReturnValue3 $1)这种方法。如下图,两种调用方法都得到了设置好的字符串返回值。
