亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

ls || echo no && echo yes 為什么會打印yes?

ls || echo no && echo yes 這條命令為什么會打印yes? 這里老師解釋說是前面的ls執行成功了,這解釋沒有說服力??!因為前面可以有無數條命令,這些命令可能正確輸出,也可能錯誤輸出,這樣還怎么判斷?

正在回答

6 回答

是不是 ? [命令無論對錯]?|| echo no ?返回的值都是真

1 回復 有任何疑惑可以回復我~

mark

0 回復 有任何疑惑可以回復我~

(ls || echo no)&&echo yes

這樣你就看懂了,執行ls,到邏輯后再執行yes

0 回復 有任何疑惑可以回復我~

我明白了 因為加了 邏輯或 邏輯或是只會執行其中一條語句的 ?&&符號把這個a || b ?直接看成了一條語句 ?

0 回復 有任何疑惑可以回復我~
#1

dire

然后綜合 樓上說的 這個語句返回的值是真 所以會執行&&后面的語句
2015-12-01 回復 有任何疑惑可以回復我~

你這是Tony老師的說法,我覺得Tony老師這么解釋沒邏輯,所以才問了。這問題我自弄清楚了。并不是因為ls執行成功了,而是因為ls||echo no返回值是真,才會執行后面的echo yes.

0 回復 有任何疑惑可以回復我~
#1

onemoo

我也是這么說的啊 “這樣 && 前面的部分(ls || echo no)也算作執行成功”
2015-11-14 回復 有任何疑惑可以回復我~

這跟前面的無數條命令沒有關系,ls指的就是開頭的這個ls。

||&& 具有同等的優先級,所以 ls || echo no 會先執行,隨后是&&的部分:

那么開頭的ls執行成功了,所以就不用執行 || 后面的echo no了,這樣 && 前面的部分(ls || echo no)也算作執行成功,所以&&后面的echo yes還要繼續執行,這樣就打出yes了

3 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

ls || echo no && echo yes 為什么會打印yes?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號