【发布时间】:2013-05-30 02:27:21
【问题描述】:
我正在尝试找到一种方法在sh 中并行运行多个命令并等待它完成。
我发现以下方法不起作用 (sh: 1: Syntax error: ";" unexpected):
sh -c '(sleep 3 && echo 1) & ; (sleep 3 && echo 2) & ; wait'
但是这种语法按预期工作:
sh -c '(sleep 3 && echo 1) & ;; (sleep 3 && echo 2) & ;; wait'
但我不明白有什么区别。
;;是什么意思,什么时候用?
【问题讨论】:
-
这两个命令行都不起作用。
;;是case语句的选项分隔符。 -
对不起,我错了,它实际上在 bash 中给出了错误,但在 dash 中有效
标签: syntax sh dash-shell