10

我在 .sh 脚本中找到了这段代码:

 (test -x "$1" || which "$1") 

这个运算符||是什么意思?

4

3 回答 3

23

它等效于具有短路评估的布尔“或”,这样只有当第一个命令返回与“false”相对应的某个值时,它才会执行第二个命令。例如:

false || echo "foo"

呼应“foo”,而

true || echo "foo"

什么都不打印。&&运营商提供免费操作。

于 2012-11-25T16:53:32.397 回答
8

它的意思是:

如果第一个命令成功第二个将永远不会被执行

于 2012-11-25T16:54:08.717 回答
1

双管道的作用是执行第一个命令,如果成功则停止执行,否则将执行第二个命令。

它与&&相反。

于 2012-11-25T16:54:39.883 回答