在用linux命令時候,我們可以一行執行多條命令或者有條件的執行下一條命令,下面我們講解一下linux命令分號&&和&,|和||的用法
「;」分號用法
方式:command1 ; command2
用;號隔開每個命令, 每個命令按照從左到右的順序,順序執行, 彼此之間不關心是否失敗, 所有命令都會執行。
「| 」管道符用法
方式:command1 | command2
linux所提供的管道符「|」將兩個命令隔開,管道符左邊命令的輸出就會作為管道符右邊命令的輸入。連續使用管道意味著第乙個命令的輸出會作為 第二個命令的輸入,第二個命令的輸出又會作為第三個命令的輸入,依此類推
利用乙個管道
# rpm -qa|grep licq
這條命令使用乙個管道符「|」建立了乙個管道。管道將rpm -qa命令的輸出(包括系統中所有安裝的rpm包)作為grep命令的輸入,從而列出帶有licq字元的rpm包來。
利用多個管道
# cat /etc/passwd | grep /bin/bash | wc -l
這條命令使用了兩個管道,利用第乙個管道將cat命令(顯示passwd檔案的內容)的輸出送給grep命令,grep命令找出含有「/bin /bash」的所有行;第二個管道將grep的輸出送給wc命令,wc命令統計出輸入中的行數。這個命令的功能在於找出系統中有多少個使用者使用bash
「&」符號用法
&放在啟動引數後面表示設定此程序為後台程序
方式:command1 &
預設情況下,程序是前台程序,這時就把shell給佔據了,我們無法進行其他操作,對於那些沒有互動的程序,很多時候,我們希望將其在後台啟動,可以在啟動引數的時候加乙個'&'實現這個目的。
「&&」符號用法
shell 在執行某個命令的時候,會返回乙個返回值,該返回值儲存在 shell 變數 $? 中。當 $? == 0 時,表示執行成功;當 $? == 1 時(我認為是非0的數,返回值在0-255間),表示執行失敗。
有時候,下一條命令依賴前一條命令是否執行成功。如:在成功地執行一條命令之後再執行另一條命令,或者在一條命令執行失敗後再執行另一條命令等。shell 提供了 && 和 || 來實現命令執行控制的功能,shell 將根據 && 或 || 前面命令的返回值來控制其後面命令的執行。
語法格式如下:
command1 && command2 [&& command3 ...]
命令之間使用 && 連線,實現邏輯與的功能。
只有在 && 左邊的命令返回真(命令返回值 $? == 0),&& 右邊的命令才會被執行。
只要有乙個命令返回假(命令返回值 $? == 1),後面的命令就不會被執行。
「||」符號用法
邏輯或的功能
語法格式如下:
command1 || command2 [|| command3 ...]
命令之間使用 || 連線,實現邏輯或的功能。
只有在 || 左邊的命令返回假(命令返回值 $? == 1),|| 右邊的命令才會被執行。這和 c 語言中的邏輯或語法功能相同,即實現短路邏輯或操作。
只要有乙個命令返回真(命令返回值 $? == 0),後面的命令就不會被執行。 –直到返回真的地方停止執行。
舉例,ping命令判斷存活主機
ping -c 1 -w 1 192.168.1.1 &> /dev/null && result=0 ||result=1 #&放在啟動引數後面表示設定此程序為後台程序
if [ "$result" == 0 ];then
echo "192.168.1.1 is up!"
else
echo "192.168.2.1 is down!"
fi
linux中的分號 和 , 和 說明與用法
在linux中,和 和 介紹如下 分號用法 方式 command1 command2 用 號隔開每個命令,每個命令按照從左到右的順序,順序執行,彼此之間不關心是否失敗,所有命令都會執行。表示任務在後台執行,如要在後台執行redis server,則有 redis server 管道符用法 方式 co...
linux中的分號
幾個符號的用法 順序地獨立執行各條命令,彼此之間不關心是否失敗,所有命令都會執行。順序執行各條命令,只有當前乙個執行成功時候,才執行後面的。放在啟動引數後面表示設定此程序為後台程序 順序執行各條命令,只有當前面乙個執行失敗的時候,才執行後面的。分號用法 用 號隔開每個命令,每個命令按照從左到右的順序...
linux中的分號
幾個符號的用法 順序地獨立執行各條命令,彼此之間不關心是否失敗,所有命令都會執行。順序執行各條命令,只有當前乙個執行成功時候,才執行後面的。放在啟動引數後面表示設定此程序為後台程序 順序執行各條命令,只有當前面乙個執行失敗的時候,才執行後面的。分號用法 用 號隔開每個命令,每個命令按照從左到右的順序...