我有一个包含以下脚本的 package.json:
"scripts": {
"config": ". ./setup.sh"
},
Run Code Online (Sandbox Code Playgroud)
setup.sh 文件提示用户输入 API 令牌,
read -p "Enter API Authorization Token: " val
export API_AUTH_TOKEN=$val
Run Code Online (Sandbox Code Playgroud)
和通过 PS3 菜单的环境。例如:输入 1 应该导出 DEFAULT_ENV=' http://localhost:8000 '。
当我通过终端(. ./setup.sh)运行这个 setup.sh 时,它工作得很好。仅当我运行“npm run config”时,它实际上并没有导出这些值,尽管它的行为就像它一样。我的印象是这与此脚本是另一个进程中的进程有关,因此不会影响全局环境。我如何才能做到这一点?