本文提供三种方法去设置shell脚本的返回码。ZDf办公区 - 实用经验教程分享!
工具/原料
方法/步骤
1通过一个全局变量mResult设置返回值,返回值可以是字符串。示例代码如下:ZDf办公区 - 实用经验教程分享!
#!/bin/shZDf办公区 - 实用经验教程分享!
getReturnValue1()ZDf办公区 - 实用经验教程分享!
{ZDf办公区 - 实用经验教程分享!
mResult="my returns!!!!"ZDf办公区 - 实用经验教程分享!
}ZDf办公区 - 实用经验教程分享!
getReturnValue1ZDf办公区 - 实用经验教程分享!
echo $mResultZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
2看,运行上述脚本,可以得到设置的返回值。ZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
23利用return和$?来设置返回值,返回值是0~255之间的值。示例代码如下:ZDf办公区 - 实用经验教程分享!
#!/bin/shZDf办公区 - 实用经验教程分享!
getReturnValue2()ZDf办公区 - 实用经验教程分享!
{ZDf办公区 - 实用经验教程分享!
if [ $1 = "y" ];thenZDf办公区 - 实用经验教程分享!
return 1ZDf办公区 - 实用经验教程分享!
elif [ $1 = "n" ];thenZDf办公区 - 实用经验教程分享!
return 0ZDf办公区 - 实用经验教程分享!
elseZDf办公区 - 实用经验教程分享!
return 128ZDf办公区 - 实用经验教程分享!
fiZDf办公区 - 实用经验教程分享!
}ZDf办公区 - 实用经验教程分享!
getReturnValue2 $1ZDf办公区 - 实用经验教程分享!
echo $? ZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
4脚本运行结果如下图。$?表示上一条命令的退出状态码。以下是典型的几个退出状态码及其意义:ZDf办公区 - 实用经验教程分享!
0:命令运行成功ZDf办公区 - 实用经验教程分享!
1:通用未知错误ZDf办公区 - 实用经验教程分享!
2:误用shell命令ZDf办公区 - 实用经验教程分享!
126:命令不可执行ZDf办公区 - 实用经验教程分享!
127:没有找到命令ZDf办公区 - 实用经验教程分享!
128:无效退出参数ZDf办公区 - 实用经验教程分享!
130:命令通过Ctrl C终止ZDf办公区 - 实用经验教程分享!
255:退出状态码越界ZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
5还可以将上述return换成echo,用echo可以设置成字符串返回值。示例代码如下:ZDf办公区 - 实用经验教程分享!
#!/bin/shZDf办公区 - 实用经验教程分享!
getReturnValue3()ZDf办公区 - 实用经验教程分享!
{ZDf办公区 - 实用经验教程分享!
if [ $1 = "y" ]ZDf办公区 - 实用经验教程分享!
thenZDf办公区 - 实用经验教程分享!
echo "Yes!"ZDf办公区 - 实用经验教程分享!
elseZDf办公区 - 实用经验教程分享!
echo "No!"ZDf办公区 - 实用经验教程分享!
fiZDf办公区 - 实用经验教程分享!
}ZDf办公区 - 实用经验教程分享!
returns=`getReturnValue3 $1`ZDf办公区 - 实用经验教程分享!
echo $returnsZDf办公区 - 实用经验教程分享!
returns=$(getReturnValue3 $1)ZDf办公区 - 实用经验教程分享!
echo $returnsZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
6调用函数可以用`getReturnValue3 $1`,也可以用$(getReturnValue3 $1)这种方法。如下图,两种调用方法都得到了设置好的字符串返回值。ZDf办公区 - 实用经验教程分享!
ZDf办公区 - 实用经验教程分享!
注意事项
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!ZDf办公区 - 实用经验教程分享!