相关疑难解决方法(0)

从密钥/对值文件中设置环境变量

TL; DR:如何将一组键/值对从文本文件导出到shell环境中?


为了记录,下面是问题的原始版本,带有示例.

我正在用bash编写一个脚本,用于解析某个文件夹中包含3个变量的文件,这是其中之一:

MINIENTREGA_FECHALIMITE="2011-03-31"
MINIENTREGA_FICHEROS="informe.txt programa.c"
MINIENTREGA_DESTINO="./destino/entrega-prac1"
Run Code Online (Sandbox Code Playgroud)

该文件存储在./conf/prac1中

我的脚本minientrega.sh然后使用以下代码解析文件:

cat ./conf/$1 | while read line; do
    export $line
done
Run Code Online (Sandbox Code Playgroud)

但是当我minientrega.sh prac1在命令行中执行时,它不会设置环境变量

我也试过使用,source ./conf/$1但同样的问题仍然适用

也许有其他方法可以做到这一点,我只需要使用我传递的文件的环境变量作为我的脚本的参数.

variables bash environment-variables

425
推荐指数
28
解决办法
31万
查看次数

如何在windows中为npm run-scripts设置shell

我在windows上运行npm并且想在运行脚本中使用&style并行操作但是在cmd中并行运行在我的package.json文件中有点乱 - 我想写 -

脚本:{"go":"cmd1&cmd2"}

但是npm执行cmd.exe下的脚本,该脚本不知道; 我可以将其更改为脚本:{"go":"bats/bat1.bat")其中bat1.bat是一个cmd bat文件,它使用windows样式调用或启动命令来并行运行命令.哪个有效,但给了我一个仅适用于Windows的脚本

如果我可以让npm在bash克隆或cygwin下运行脚本我会尝试配置:{"shell":"bash"}但是仍然运行cmd.exe会简单得多

有没有办法告诉npm使用特定的shell(而不是cmd.exe)运行脚本?

windows shell npm

61
推荐指数
4
解决办法
3万
查看次数

如何在 package.json 内的 npm 脚本中使用 SECRET_ENV?

我有一个名为的秘密密钥API_KEY,我想访问package.json's的内部scripts

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

我的.env文件包含API_KEY

API_KEY=abc123
Run Code Online (Sandbox Code Playgroud)

API_KEY我如何才能访问insidepackage.json的值,scripts同时仍然保密,因为我需要公开推送package.json

目前,我执行以下操作,但不能跨平台:

包.json

{
   "scripts": {
      "start": "web-ext run --api-key=$API_KEY"
   }
}
Run Code Online (Sandbox Code Playgroud)

当运行start脚本时,我这样做:

API_KEY=abc123 npm start
Run Code Online (Sandbox Code Playgroud)

这要归功于 Bash 编程语言,但它不适用于 Windows。我需要$API_KEYstart脚本中替换为%API_KEY%. 但我希望它是跨平台的。还有其他办法吗?

javascript environment-variables node.js secret-key

6
推荐指数
1
解决办法
3032
查看次数