是否可以运行node.exe,将文本传入其中,然后继续交互式会话?
我想创建一个快捷方式bat(或bash)文件来编辑我的数据库。
通常这就是我正在做的事情:
$ node
>var db=require('mydb')
>db.open('myserver')
>//Now I can start access the db
>db.query...
我想做那样的事情:
$ node -i perDefinedDb.js
>db.query(.... //I don't want to define the DB each time I run the node.exe
我试过这样的话:
echo console.log(a) | node.exe
结果如下:
3
程序完成。我想在管道之后继续节点REPL。
换言之: 我希望能够在节点REPL中使用我的数据库,而不是每次都定义它。
答案 0 :(得分:1)
从您的js文件启动REPL,您可以提供所需的上下文:
const repl = require('repl');
var db = require('mydb');
db.open('myserver');
repl.start('> ').context.db = db;
现在你只需要运行这个文件(node myREPL.js
)就可以像往常一样使用REPL。