Tag: shell

你将如何从一个node.js命令行脚本启动浏览器

可能重复: 如何使用nodejs打开默认浏览器并导航到特定的URL 我不知道是否重要,但我在OSX上。 我知道你可以通过键入命令行来启动浏览器: open http://www.stackoverflow.com 但有没有办法从nodejs命令行脚本中打开浏览器?

如何杀死nodejs中的childprocess?

使用shelljs创build一个subprocess !/usr/bin/env node require('/usr/local/lib/node_modules/shelljs/global'); fs = require("fs"); var child=exec("sudo mongod &",{async:true,silent:true}); function on_exit(){ console.log('Process Exit'); child.kill("SIGINT"); process.exit(0) } process.on('SIGINT',on_exit); process.on('exit',on_exit); subprocess仍在运行..杀死父进程后

如何在节点中为shell命令转义string?

在nodejs中 ,执行外部命令的唯一方法是通过sys.exec(cmd)。 我想调用一个外部命令,并通过stdin给它的数据。 在nodejs中,似乎还没有一种方法可以打开一个命令,然后将数据推送给它(只能执行并接收其标准的+错误输出),所以看起来目前我必须做的唯一方法是通过一个单一的string命令,如: var dangerStr = "bad stuff here"; sys.exec("echo '" + dangerStr + "' | somecommand"); 对这样的问题的大多数答案都集中在nodejs(它使用Google的V8 Javascript引擎)或Python等其他语言的本地特性对我不起作用的正则expression式。 我想逃避dangerStr,以便安全地编写像上面那样的execstring。 如果有帮助,dangerStr将包含JSON数据。

适用于node.js脚本的hashbang

我正在尝试为node.js创build一个可以在多个环境中工作的脚本。 特别是对于我来说,我在OS X和Ubuntu之间来回切换。 在前者中,节点被安装为node ,而后者则是nodejs 。 在我的脚本的顶部,我可以有: #!/usr/bin/env node 要么 #!/usr/bin/env nodejs 我宁愿让这个脚本作为任一环境的可执行文件运行,只要安装了这个节点,而不是让其中一个或另一个必须指定命令( ./script-name.js与node script-name.js )。 有没有办法指定一个备份hashbang或在node.js兼容的情况?