Linux終端同時執行多個Linux命令方式

2021-10-14 07:35:49 字數 2248 閱讀 4988

1.&,&&,|,||代表意思

&  表示任務在後台執行,如要在後台執行redis-server,則有  redis-server &

&& 表示前一條命令執行成功時,才執行後一條命令 ,如 echo

'1『 && echo '2'

wc -l

|| 表示上一條命令執行失敗後,才執行下一條命令,如 cat nofile ||

echo

"fail"

2.在一行中執行兩個或多個命令可以節省大量時間,並在linux中提高效率。在linux中,有三種方法可以在一行中執行多個命令。

; command 1 ; command 2 首先執行command1,然後執行command2

&& command 1 && command 2 當command1執行成功並結束,然後執行command2

|| command 1 || command 2 當command1執行失敗時才執行command2

3.使用 ; 符號執行多條命令其中最簡單的是分號(;),使用方式如下:

cmd1; cmd2; cmd3
cmd1將首先執行,不管cmd1執行成功還是出現錯誤,cmd2都會在它之後執行,當cmd2命令完成時,cmd3將會執行。

[root@localhost ~]

mkdir /root/new_folder;

cd /root/new_folder;

touch test_file;

pwd;

ls -l

/root/new_folder

total 0

-rw-r--r--. 1 root root 0 sep 2 22:01 test_file

[root@localhost new_folder]

#

在上面命令彙總,首先mkdir建立了乙個資料夾在/root目錄中,cd 進入前面建立的目錄,touch建立乙個空檔案,然後pwd顯示當前位置,ls -l檢視目錄中的檔案。

注:分號(;)後面的空格可帶可不帶,但空格使命令列更容易讀懂。

4.使用 && 符號執行多條命令

cmd1 && cmd2 && cmd3
如果你使用基於centos的發行版,你一定遇到過這個使用&&概念的命令:

[root@localhost ~] yum makecache && yum -y update
命令列彙總的前半部分時更新快取,後半部分更新所有安裝包。

舉個例子,如果new_folder已經存在,那麼mkdir命令將返回錯誤。; 和&& 的差異可以在下面的截圖中看到:

注:當第乙個命令出現錯誤時,&&分隔的命令會停止執行後面的命令。

5.使用 || 符號執行多條命令

cmd1 || cmd2 || cmd3
如果cmd1執行失敗,則執行cmd2。如果cmd2執行成功,cmd3將不會執行。

在上面的截圖中,建立資料夾的命令失敗,因為該資料夾已經存在。因為這個命令失敗了,所以下乙個命令cd /root/new_folder被成功執行。這個命令已經成功執行,下乙個命令pwd將不執行。

6.合併&&和||運算子

例如,可以檢查檔案是否存在,並相應地列印訊息。

[root@localhost ~]

[ -f file.txt ]

&&echo

"file exists"

||echo

"file doesn't exist"

在建立file.txt檔案之前和之後執行上面的命令,看看區別:

總結在一行中執行兩個或多個命令可以節省大量時間,並在linux中提高效率。

讓Linux終端同時執行多個Linux命令

在一行中執行兩個或多個命令可以節省大量時間,並在linux中提高效率。在linux中,有三種方法可以在一行中執行多個命令 使用 符號執行多條命令 其中最簡單的是分號 使用方式如下 cmd1 cmd2 cmd3cmd1將首先執行,不管cmd1執行成功還是出現錯誤,cmd2都會在它之後執行,當cmd2命...

如何在Linux終端同時執行多個Linux命令

在一行中執行兩個或多個命令可以節省大量時間,並在linux中提高效率。在linux中,有三種方法可以在一行中執行多個命令 使用 符號執行多條命令 其中最簡單的是分號 使用方式如下 cmd1 cmd2 cmd3cmd1將首先執行,不管cmd1執行成功還是出現錯誤,cmd2都會在它之後執行,當cmd2命...

shell多個指令碼同時執行

1 編寫多程序實驗指令碼 demo.sh bin bash sub1.log sub2.log sub3.log function sub1 doecho date t sub1.log 注意date 和 號之間有空格。如 date m d date取 月 日 的命令列。sleep 1 done f...