bash 或 zsh 中的 subshel​​l 和 detach 之间的区别?

the difference between a subshell and detach in bash or zsh?

例如,做之间的区别是什么:

(ls | sort) ; ls

{ls | sort} & ; ls

因为在像 bash 或 zsh 这样的 shell 中执行此操作没有区别。 谢谢提前回复!

第二种情况,最后的ls立即执行。在第一种情况下,它在 subshel​​l(因此 sort 命令)终止后执行。