标题已经说明了一切!我正在制作一个非常大的项目(涉及AppleScript和iMessage),脚本已经经过测试,它会打开终端并运行:node ~/Desktop/chatbot [argument]
。目前,它只是把这个传递给我:[ '/usr/local/bin/node', '~/Desktop/chatbot', '[argument]' ]
。如何让它仅传递给我[argument]
?
标题已经说明了一切!我正在制作一个非常大的项目(涉及AppleScript和iMessage),脚本已经经过测试,它会打开终端并运行:node ~/Desktop/chatbot [argument]
。目前,它只是把这个传递给我:[ '/usr/local/bin/node', '~/Desktop/chatbot', '[argument]' ]
。如何让它仅传递给我[argument]
?
我怎样只获取传递给我的[argument]参数?
不行。它是按照这种设计的。你可以安全地忽略该数组的[0]
和[1]
元素,直接从[2]
开始查找。如果你真的想创建一个删除了这些元素的数组,可以使用.slice(2)
方法:
let args = process.argv.slice(2);
console.log(args);
如果您只想要第一个命令行参数,可以直接获取:
let arg = process.argv[2];
console.log(arg);
前两个参数始终是node
和您要运行的文件/文件路径
。
如果您只想获取传递的参数,而不是node
和文件路径
,只需忽略前两个值,并像这样检索它们:
for(var i = 2; i < process.argv.length; i++) {
console.log(process.argv[i]);
}