2
我正在使用bash脚本,我试图从子shell脚本中的函数退出到父shell脚本并返回状态码。从子shell脚本中的函数退出到父shell脚本
Script1.sh
echo "hello script1"
. ./script2.sh
echo $?
Script2.sh
status()
{
echo "status"
return 1
}
status
echo "Hello shell2"
这个脚本打印“状态”和“你好shell2”,但我想从script2.sh的状态函数退出,不打印“你好shell2”到script1.sh。
我已经检查了一些堆栈溢出问题,这些问题是关于从子脚本返回给父节点的,而不是从子节点的功能到父节点。
由于事先 索曼
感谢您的回复。在我们的脚本中,我们有从不同功能内部的许多地方调用“状态”功能。是否有不同的方法来处理这种情况 – Soman
不怕。如果可以在调用堆栈的任意深度调用status,则更加复杂,因为我的答案假设您在脚本级别调用“status”,而不是在另一个函数内调用。 – chepner
谢谢,我会尽力找出不同的方法。 – Soman