php 如果composer命令在脚本中执行提示Continue as root/super user [yes]?如何解决?
·
Continue as root/super user [yes]?
Composer 检测到当前用 root 身份运行,出于安全提示需要手动确认。
要让脚本全自动通过,有三种办法:
1. 环境变量(最干净,推荐)
在调用 Composer 之前导出:
export COMPOSER_ALLOW_SUPERUSER=1
一行即可,后续所有 Composer 命令都不再询问。
示例:
#!/usr/bin/env bash
export COMPOSER_ALLOW_SUPERUSER=1
echo "=== 清理缓存 ==="
composer clear-cache --no-interaction
echo "=== 重载自动加载 ==="
composer dump-autoload -o --no-interaction
2. 命令前加变量(无需改脚本)
COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload -o --no-interaction
3. 利用 yes(通用但多余)
yes | composer dump-autoload -o
可行,但不如方法 1/2 直观,还会把
y写进 stdin。
小结
把 export COMPOSER_ALLOW_SUPERUSER=1 写进 reload.sh 顶部,以后无论清理缓存还是 dump-autoload 都不会再停下来要 yes。
更多推荐



所有评论(0)