Jus*_*ake 29 macos command-line node.js
我喜欢javascript,所以当我听说Node.js是一个基于V8的Javascript运行时时,我很兴奋.我更喜欢在Javascript中继续我的shell脚本.我的问题是:如何在不调用的情况下运行我的脚本node ~/Scripts/myscript.js?在chmod +x我的脚本之后,它尝试作为bash脚本而不是Node.js javascript运行.
aki*_*ira 36
是什么让你当前的shell启动bash是你的当前shell(bash?)没有关于如何处理file.js的线索.这就是为什么unix的神发明了shebang:
字符序列由字符编号和感叹号(#!)组成,当它作为文本文件第一行中的前两个字符出现时.在这种情况下,类Unix操作系统中的程序加载器将第一行的其余部分解析为解释器指令,并使用指定为参数的任何命令行选项调用字符序列后指定的程序.
所以,在你的情况下,我会尝试
#!/usr/bin/env node
Run Code Online (Sandbox Code Playgroud)
在脚本的顶部.您可以看到,例如在'inode'(交互式node.js)shell中应用了beeing,这可能是另一个触发脚本的选项.
https://github.com/bancek/node-interactive-shell/blob/master/inode.js