1

我想运行一系列命令作为当前进程,其中一个命令在后台运行,如下所示(不起作用)

 { echo "long running process" & ; sleep 3; } # error sh.exe": syntax error near unexpected token `;'

但是,当有一个后台进程时,它可以工作,如下所示

 { echo "long running process" & } # works

为什么在 bash 中不允许在后台运行一个命令运行多个命令?

4

1 回答 1

4

由于&是有效的命令分隔符,因此不需要;.

{ echo "42" & sleep 3; }
于 2013-06-20T08:21:41.153 回答