bash – 最好的方法是编写一个运行命令并记录其退出代码的包装函
|
我目前使用这个函数来包装执行命令并记录其执行,并返回代码,并在非零返回码的情况下退出.
然而,这是有问题的,因为显然,它做双重内插,使命令与单引号或双引号在其中打破脚本. 你能推荐一个更好的方法吗? 这是功能: do_cmd()
{
eval $*
if [[ $? -eq 0 ]]
then
echo "Successfully ran [ $1 ]"
else
echo "Error: Command [ $1 ] returned $?"
exit $?
fi
}
"$@" 从http://www.gnu.org/software/bash/manual/bashref.html#Special-Parameters:
这意味着参数中的空格被正确地引用. do_cmd()
{
"$@"
ret=$?
if [[ $ret -eq 0 ]]
then
echo "Successfully ran [ $@ ]"
else
echo "Error: Command [ $@ ] returned $ret"
exit $ret
fi
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
