npm - npm脚本:读取.env文件

标签 npm npm-scripts

我有一个简单的要求:在我的npm脚本package.json文件中,有以下一行:

{
    "scripts": {
        "example": "some-lib --argument --domain \"https://tld.com\""
    }
}


现在,我希望排除“域”。

首先尝试使用$npm_package_config,它可以工作:

{
    "config": {
        "domain": "https://tld.com"
    },
    "scripts": {
        "example": "some-lib --argument --domain \"$npm_package_config_domain\""
    }
}


但我想从本地.env文件加载域。

我没有找到任何解决方案来在命令行上的npm脚本中读取env文件的内容。

有人可以给我提示解决此问题的方法吗?

最佳答案

一个更简单的解决方案是仅使用bash内联解析env文件并提取所需的变量:

假设您的.env文件如下所示:

DOMAIN=https://tld.com


"scripts": {
  "example": "some-lib --argument --domain $(grep DOMAIN .env | cut -d '=' -f2)"
} 

关于npm - npm脚本:读取.env文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53998640/

相关文章:

node.js - 更改文件时如何使用nodemon在npm脚本上重新启动多个服务器文件

javascript - 如何在安装任何 npm 模块之前运行脚本?

node.js - NPM Run Build 始终构建生产而不是开发

javascript - 在 Bower 中指定版本号

javascript - 我如何在 npm 中 require() 网络 worker ?

javascript - 使用 "TypeError: $ is not a function"时我得到 "import * as jQuery"

javascript - 使用包分发 NPM 脚本以供项目安装使用

node.js - 无法在 Apple Silicon M1 上安装 npm

node.js - Puppeteer 1.16.0 无法导航到 https ://google. ca?

vue.js - 使用 connect-history-api-fallback' ,但不知道如何在 vuejs 中实现