【发布时间】:2019-10-19 16:28:48
【问题描述】:
我的 Node.js 脚本在命令行和 bash 脚本中的运行方式不同。一切都通过命令行正常运行,但是从 bash 脚本中运行时无法识别第二个参数。
我需要在 bash 脚本中以不同的方式传递参数吗?
server.js 提供了两个参数:
1. 命令(在本例中,通过 mySQL 更新表)
2. 表(通过 API 拉取数据更新的所需表)
命令行/脚本输入:
node server.js -update-table table1
server.js:
var args = process.argv.slice(2);
var command = args[0];
switch (command) {
case '-update-table':
var tableName = args[1];
switch (tableName) {
case 'table1':
tableUpdateFunction.table1();
break;
case 'table2':
tableUpdateFunction.table2();
break;
default:
console.log('ERROR: Unknown Table Name ' + tableName)
break;
}
break;
}
从脚本运行时的控制台(触发默认情况):
ERROR: Unknown Table Name table1
【问题讨论】:
-
你能发布你的脚本吗?
-
tableName的打印类型默认为console.log(typeof tableName)。 -
This answer 将解释您的问题。而且我不明白为什么有人会否决您的问题,因为它似乎已经到位(打印输出需要考虑一下)。
-
@goodvibration:您的链接答案如何解释这个问题?链接的答案是关于 jQuery
each的一个方面。