1
A
回答
8
cmd1 && cmd2 && cmd3
說明
執行cmd1
。如果失敗,將不會執行cmd2
和cmd3
。
爲什麼?由於假邏輯上與別的相與總是等於假,所以如果cmd1
回報假沒有必要評價cmd2
和cmd3
。並且通過類似推理,如果cmd1
成功並且cmd2
失敗,請不要執行cmd3
。
注意
只是爲了讓事情變得更加混亂,POSIX系統(如Linux和Unix變種)爲成功和非零返回0 失敗。
所以,當我說失敗上述
假 = 非零 = 失敗
真正 = 零 = 成功
爲什麼?因爲使用返回碼的數值表示不同的失敗碼。
例如,
$ ls /root
ls: cannot open directory /root: Permission denied
$ echo $?
2
$ asdf
asdf: command not found...
$ echo $?
127
$ ls/
bin boot data dev etc home lib ...
$ echo $?
0
ls
返回 「1」 小的問題和 「2」 爲更嚴重的問題。 bash shell返回「127」表示「command not found」,ls /
返回「0」表示成功。
相關問題
- 1. Jenkins執行bash shell命令
- 2. PHP系統()犯規讓代碼的其餘部分,執行
- 3. 隱藏從列號開始的表列的其餘部分
- 4. 顯示列表的其餘部分
- 5. 執行shell命令作爲pom.xml的一部分
- 6. 執行shell命令
- 7. 爲什麼bash數組的一部分作爲命令執行?
- 8. 從popen執行命令shell並設置其他命令shell
- 9. SAS命令行 - 部分程序執行
- 10. 執行外部bash shell(windows)的GIT命令的麻煩
- 11. python:os.system不執行shell命令
- 12. 如何停止執行NodeJs代碼的其餘部分?
- 13. 如何停止執行代碼的其餘部分 - javascript
- 14. Shell命令執行
- 15. 命令執行shell
- 16. 填充行的其餘部分的下拉列表
- 17. jquery不會繼續執行JavaScript代碼的其餘部分
- 18. 不止一次執行紅寶石塊的其餘部分
- 19. 如何讓命令執行的百分比機率
- 20. 從Java執行shell命令
- 21. 如何執行在泊塢窗容器命令,bash shell的腳本的一部分
- 22. 使用shell命令從php.ini中的行中刪除分號
- 23. 從命令行執行Django Shell命令
- 24. 在shell(bash)中如何在管道中執行多個命令?
- 25. 如何在setup.py中執行(安全)bash shell命令?
- 26. 如何在Bash腳本中執行Zsh shell命令
- 27. 每5秒執行一次bash函數,但讓腳本的其餘部分運行
- 28. Gulp-Shell不執行任何命令
- 29. 在C++中執行shell命令時強制執行環境bash
- 30. 爲什麼觸發器的一部分在其餘部分之前被執行?
@ user1080552爲了說明這個原因的原因,「&&」是邏輯或者是「短路」。也就是說,它從左到右評估,一旦它評估任何部分爲假,它知道整個結果將是假的,因此它會停止。 – jam
除'&&'外,還有'||' - 'cmd1 ||如果'cmd1'失敗,cmd2'運行'cmd2'。 – Yossarian
@jam你的意思是「合乎邏輯的」。 –