根据我在bash脚本中的经验 有时退出命令不会退出脚本,因为使用管道线,子shell,甚至深层循环等等
尽管这是罕见的情况,我想避免使用exit命令并认为用来杀死脚本进程本身
但是我想问这种使用方法 - kill -SIGPIPE $$ 是否能完成这项工作? ,或者存在一些风险
带退出的示例函数
function check_status_of_command
{
result=$1
if [[ $result -ne 0 ]]
then
echo "Error ...... "
exit 1
else
return 0
fi
}
示例函数退出,但我们设置了 - kill -SIGPIPE $$ insted
function check_status_of_command
{
result=$1
if [[ $result -ne 0 ]]
then
echo "Error ...... "
kill -SIGPIPE $$
else
return 0
fi
}
示例如何调用函数
cp file file.bck
check_status_of_command