如何在作曲家脚本的后台运行命令并转到下一个命令。我尝试了如下所示的内容,但它仍然挂起,直到 chgrp 命令完成并且不执行下一个命令。
作曲家.json
"post-install-cmd": [
"sh ./scripts/composer/post-install.sh"
],
post-install.sh
#!/bin/sh
set -ex
echo "Setting appropriate permissions"
nohup chgrp -R www web &
echo "Executing next command"
PHP 是单线程的,因此运行 composer 将锁定它,直到进程完成,这意味着它在运行 shell 脚本时仍然"忙碌",因为它将等待完成。
但是,可以多线程处理它,但只能从 CLI 进行,它对您没有帮助,因为您将从一开始就从作曲家开始程序。
看看这个问题和答案,看看它是否适合你的用例。