Subshell

子殼不起作用

  • September 3, 2018

我想並行執行幾個命令,但我不知道為什麼下面的程式碼段不起作用。

#!/bin/bash
( ping 8.8.8.8 )
( ping 192.168.0.1 )

它完全忽略了第二個 ping 命令。為什麼呢?

編輯:好的,現在我知道你可以通過&.

ping 8.8.8.8 & ping 192.168.0.1

但是為什麼上面的程式碼段不起作用?

預設情況下,子shell 不會分叉,您還必須使用&將其發送到後台來執行第二個子shell,而無需等待第一個子shell 結束。

例如

ping 8.8.8.8 & ping 192.168.0.1

引用自:https://unix.stackexchange.com/questions/267779