我有一个文件结构,一会儿给大家列举一下。我有一个 Web 服务器,它在按下按钮时启动命令行进程。我想添加选项以使用命令行参数以 headless 方式运行服务器。这是我应该这样做的方式吗?这是我的项目结构。
/models
/model1
/model2
/model3
/routes
/index
/test
/users
/credentials
/adduser
/views
/same as routes. Route 'test' has no layout.
在索引或“/”中,我有一个函数,它接受多个参数,并通过单击索引页面上的按钮启动。然后我们通过“测试/运行”转发,并呈现“索引” View 。该进程继续在终端中运行。我现在将发布该功能的示例。
router.post('/run', ensureAuthenticated, function(req, res){
return res.redirect('/test/running')
});
// Get Homepage
router.get('/running', ensureAuthenticated, function(req, res){
console.log(res.locals.user);
// console.log(app.locals.user);
const var1 = res.locals.user.username;
const var2 = res.locals.user.username;
const var3 = res.locals.user.username;
const var4= res.locals.user.username;
const deets = {
var5,
var6
};
res.render('index');
dosomething(var1, var2, var3, var4, deets);
setInterval(dosomething, 10 * 1000);
})
});
那么大家怎么看呢?我怎样才能通过命令行实现 var1-6 的传递?如果您能从这里获得任何帮助,我将不胜感激。
我现在在 Windows 上运行,但目标服务器是 Ubuntu 系统。
最佳答案
在 node.js 中,您可以使用构建在 process
变量中传递 CLI 参数
例子
// test.js
var args = process.argv;
console.log(args[0]); // it will give the node executable path
console.log(args[1]); // it will give current file name
console.log(args[2]); // cli arguments start index
现在运行代码
$ node test.js hello
/usr/bin/node
/home/blackdaemon/test.js
hello
关于javascript - 如何在 NodeJS 中传递命令行参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52693993/