mes*_*600 3 unix linux bash shell
我想从失败的命令返回退出代码“ 0”。有没有比这更简单的方法了?
function a() {
ls aaaaa 2>&1;
}
if ! $(a); then
return 0
else
return 5
fi
Run Code Online (Sandbox Code Playgroud)
小智 5
只需附加return 0到函数以强制函数始终成功退出。
function a() {
ls aaaaa 2>&1
return 0
}
a
echo $? # prints 0
Run Code Online (Sandbox Code Playgroud)
如果出于任何原因希望以内联方式执行此操作,可以将其附加|| true到命令:
ls aaaaa 2>&1 || true
echo $? # prints 0
Run Code Online (Sandbox Code Playgroud)
如果您想反转退出状态,只需在命令前加上 !
! ls aaaaa 2>&1
echo $? # prints 0
! ls /etc/resolv.conf 2>&1
echo $? # prints 1
Run Code Online (Sandbox Code Playgroud)
另外,如果您陈述要总体上实现的目标,我们也许可以指导您获得更好的答案。
| 归档时间: |
|
| 查看次数: |
3575 次 |
| 最近记录: |