默認狀況下,進程是前臺進程,這時就把Shell給佔據了,咱們沒法進行其餘操做,對於那些沒有交互的進程,不少時候,咱們但願將其在後臺啓動,能夠在啓動參數的時候加一個’&’實現這個目的。html
2. &&和||shell
shell 在執行某個命令的時候,會返回一個返回值,該返回值保存在 shell 變量 $? 中。當 $? == 0 時,表示執行成功;當 $? == 1 時(我認爲是非0的數,返回值在0-255間),表示執行失敗。編程
有時候,下一條命令依賴前一條命令是否執行成功。如:在成功地執行一條命令以後再執行另外一條命令,或者在一條命令執行失敗後再執行另外一條命令等。shell 提供了 && 和 || 來實現命令執行控制的功能,shell 將根據 && 或 || 前面命令的返回值來控制其後面命令的執行。spa
語法格式以下:.net
command1 && command2 [&& command3 ...] htm
1 命令之間使用 && 鏈接,實現
邏輯與的功能。 blog
2 只有在 && 左邊的命令返回真(命令返回值 $? == 0),&& 右邊的命令纔會被執行。 進程
3 只要有一個命令返回假(命令返回值 $? == 1),後面的命令就不會被執行。 路由
邏輯或的功能get
command1 || command2 [|| command3 ...]
1 命令之間使用 || 鏈接,實現
邏輯或的功能。
2 只有在 || 左邊的命令返回假(命令返回值 $? == 1),|| 右邊的命令纔會被執行。這和 c 語言中的邏輯或語法功能相同,即實現短路邏輯或操做。
3 只要有一個命令返回真(命令返回值 $? == 0),後面的命令就不會被執行。 –直到返回真的地方中止執行。
舉例,ping命令判斷存活主機