繁体   English   中英

如何使用环境变量执行脚本并使用松露执行

[英]How can I execute a script with environment variable and execute with truffle

我创建了一个脚本来构建哈希,所以我通常这样执行:

$ truffle develop
truffle(develop)> exec scripts/myScript.js

但我的脚本现在想从 .env 读取

SIGNER= "56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

这是我的脚本

require('dotenv').config();
const fs = require("fs");
const readline = require("readline");
const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log('AAA', process.env.SIGNER);

我正进入(状态

AAA 未定义

尝试这个 :

$ truffle init test-contract
$ cd test-contract
$ npm init -y
$ npm i web3 --save
$ npm i dotenv --save

在您的测试文件夹中创建一个文件并写入它(test-contract/test/1.test.js):1.test.js

require("dotenv").config();

const Web3 = require("web3");
const web3 = new Web3(Web3.givenProvider || "http://127.0.0.1:7545");
console.log("AAA", process.env.SIGNER);

然后创建 .env 文件(test-contract/.env)并在没有空格的情况下放置以下内容:

SIGNER="56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6"

最后运行(在 test-contract 文件夹内)

$ truffle test

结果 :

Compiling your contracts...
===========================
> Compiling ./contracts/Migrations.sol
> Artifacts written to /tmp/test--11623-Aa2e6hYzLkeX
> Compiled successfully using:
   - solc: 0.8.10+commit.fc410830.Emscripten.clang

AAA 56443876ca1ea534cc8ddc422f8ab891690325d173916c528d76483681b97fd6


  0 passing (1ms)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM