本站已于 20/7/2026 停止更新并归档
Linux

Bash中的逻辑运算符

有童yt_hy · 2月17日 · 2025年 · · · 本文共267个字 · 预计阅读1分钟 1040次已读
AI 总结
Bash中&&表示前命令成功才执行后命令,||表示前命令失败才执行后命令。使用A && B || C时,若B失败会误执行C,应改为A && { B; } || C以避免该问题。

Bash中有两个逻辑运算符:&&||

使用 && 表示“如果前一个命令成功(返回值为 0),则执行下一个命令”。

使用 || 表示“如果前一个命令失败(返回值非 0),则执行下一个命令”。

如何使用逻辑运算符执行不同的命令呢?

比如我想写一个判断,先执行A代码,如果成功就继续执行B代码,如果不成功就执行C代码,那么就是:

A && B || C

是不是很简单?但你有没有发现一个问题,当A成功后执行B,B有可能会失败,那么这个时候就会继续执行C代码,这显然不是我们想看到的结果,所以:

A && { B; } || C

这意味着如果B被执行后的结果会被忽略,这样就不会引发问题了