- 论坛徽章:
- 0
|
cd /var/log || {
echo "Cannot change to necessary directory." >&2
exit $E_XCD;
}
第一个例子就把我干倒了,这个||是什么意思?是bash参考手册里面说的命令队列的意思么?
如果是,那么从下面的描述,和&&没什么区别呀?
BASH参考手册:
§ 行符结束。
3.2.3
在命令队列中可以使用一个或多个换行符分隔命令,这与分号是等价的。
在之些队列运算符中,&& 命令队列是由一个或者管道通过运算符 草
命令队列
和 || 具有同样的优先级;其次是 ;、&、&&、|| 连接而成,最后还可以 ; 和 &,这两个也有同样的优先级。
夨可选的天 由 ;、&、或换
如果一个命令是由控制字符 & 结束,则 女奨奥奬奬 会不同步的在子 女奨奥奬奬 中执行该命令。我们通常称之为
在奜后台夢运行该命令。这时 女奨奥奬奬 并不等待命令的结束,而其返回状态 0 夨即逻辑真天。如果没有启用作业控
制 夨参见 奸 夷奛作业控制奝夬 奰夶夹 天,并且也没有显式指定重定向,则在异步执行的命令的标准输入将被重定向到
/dev/null。
由 ; 分隔的命令将相继执行。奓奨奥奬奬 依次等待每个命令的结束。整个返回状态是最后一个要执行命令的
返回状态。
奜与夢和奜或夢命令队列是分别由控制运算符 && 和 || 分隔的一个或多个管道。奜与夢和奜或夢按照左结合的
方法执行。
奜与夢队列具有如下形式:
命令一 && 命令二
其中,当且仅当命令一返回值为零时才执行。
奜或夢队列具有如下形式:
命令一 || 命令二
其中,当且仅当命令一返回值为非零时才执行。
奜与夢和奜或夢队列的返回值是其中最后一个被执行的命令的返回值。
✉✉✉✉✉✉✉ ✉✉✉✉✉✉✉✉✉✉✉✉✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ ✉ 2
|
|