52 shell chmod shell-script error-handling
是否可以执行 chmod 并忽略命令中的错误
示例(备注 file.txt 不存在以显示示例)
当我打字
chmod 777 file.txt
Run Code Online (Sandbox Code Playgroud)
我在输出上出错
chmod: cannot access file.txt : no such file or directory
Run Code Online (Sandbox Code Playgroud)
所以我将 -f 标志添加到命令中,如下所示:( file.txt 不存在以显示案例)
chmod -f 777 file.txt
echo $?
1
Run Code Online (Sandbox Code Playgroud)
但是从示例 chmod 返回 1
请建议如何强制 chmod 命令在出现错误的情况下给出退出代码 0
Ger*_*rry 68
chmod -f 777 file.txt || true
由于它是一个 OR,如果其中一个语句返回 true,则返回 true。这导致退出状态为零。
dev*_*ull 63
请建议如何强制 chmod 命令在出现错误的情况下给出退出代码 0
chmod -f 777 file.txt || :
Run Code Online (Sandbox Code Playgroud)
:
如果chmod
失败,这将执行,即空命令。由于 null 命令什么都不做但总是成功,您将看到退出代码 0。
我一直爱
chmod -f 777 file.txt || exit 0
Run Code Online (Sandbox Code Playgroud)