Npm 使用env变量获取缓存位置

Npm 使用env变量获取缓存位置,npm,npm-cache,Npm,Npm Cache,我使用以下方法获取NPM缓存位置: cache_location="$(npm get cache)" 但是,该值是否也由我可以读取的env变量表示 类似于NPM\u缓存\u位置 简短回答:这取决于您希望何时/如何访问它,因为在NPM未运行时,没有可用的env变量(例如,NPM\u缓存位置) 您需要像当前一样调用npm config get cache或npm get cache 但是,一旦npm正在运行,配置参数将以npm\uu前缀放入环境中 以下说明了这一点 发现哪些环境变量可用:

我使用以下方法获取NPM缓存位置:

  cache_location="$(npm get cache)"
但是,该值是否也由我可以读取的env变量表示

类似于
NPM\u缓存\u位置


简短回答:这取决于您希望何时/如何访问它,因为在NPM未运行时,没有可用的env变量(例如,
NPM\u缓存位置

您需要像当前一样调用
npm config get cache
npm get cache

但是,一旦npm正在运行,配置参数将以
npm\uu
前缀放入环境中

以下说明了这一点


发现哪些环境变量可用: 作为了解npm将哪些环境变量放入环境的一种方法,您可以在npm脚本中使用。例如,在package.json中添加:

。。。
“脚本”:{
“打印环境变量”:“打印环境”grep“^npm”
},
...
然后运行以下命令:

npm运行打印环境变量
通过env变量获取缓存位置: 在控制台的结果日志中(即,在运行
npm run print env vars
之后),您将看到列出了
npm\u config\u cache
环境变量。它是这样写的:

npm\u config\u cache=/Users/UserName/.npm
在报告中指出:

配置

配置参数放在带有前缀的环境中。例如,您可以通过检查
npm\u config\u root
环境变量来查看有效的
根目录

注意:通过CLI直接运行
printenv|grep“^npm”
不会返回任何结果

使用env变量访问缓存位置:
  • 您可以通过npm脚本访问缓存位置,例如:

    “脚本”:{
    “使用bash缓存loc”:“echo$npm\u config\u缓存”,
    “使用win缓存loc”:“回显%npm\u配置\u缓存%”
    },
    
    有关如何使用跨平台语法的信息,请参阅

  • 通过Nodejs脚本访问npm缓存位置。例如:

    const cacheLocation=process.env.npm\u config\u cache;
    console.log(缓存位置)
    
    注意:需要通过npm脚本调用此节点脚本,才能使
    process.env.npm\u config\u缓存可用。通过运行的命令行调用它,例如,
    node./somefile.js
    将返回
    undefined
    ——这进一步表明,带有
    \u npm
    前缀的参数仅在npm运行时放入环境中


  • 不理想,但是您可以使用以下方法设置自己的环境变量:

    export NPM\u CACHE\u LOCATION=“$(NPM get CACHE)”
    
    并将其删除:

    取消设置NPM\u缓存\u位置