我正在尝试编写一个Node.js脚本,它将在新的命令窗口中的新进程中启动Node.js服务器。bash:terminal:command not found
我相信我很接近。我有这样的:
var n = cp.spawn('sh', [ 'start-server.sh' ]);
内容start-server.sh的是,像这样
#!/usr/bin/env bash
node bin/www
这个成功启动服务器,但它不会打开一个新的终端窗口,这样我就可以”没有看到任何产生进程的stdio。
所以我想我应该在bash脚本打开一个新的终端窗口,然后运行该节点的命令,所以后来的bash脚本内容将成为
#!/usr/bin/env bash
terminal -e "node bin/www"
的问题是“终端”是没有在命令行识别。这是为什么?我相信“终端”命令应该默认使用任何程序作为您的默认终端应用程序。
请告知这是否是最好的方法来做到这一点,以及为什么“终端”可能无法识别在OSX的命令行,谢谢!
这是在我的道路
echo $PATH
/Users/amills001c/.rvm/gems/ruby-2.2.1/bin:/Users/amills001c/.rvm/gems/ruby- [email protected]/bin:/Users/amills001c/.rvm/rubies/ruby-2.2.1/bin:/用户/ amills001c/google_app_engine_stuff /谷歌云SDK /斌:在/ usr/local/bin目录:在/ usr/local/bin目录/流星:在/ usr /本地/ Redis的/ bin中:在/ usr/bin中:/ bin中:/ usr/sbin目录:/ sbin目录:在/ usr/local/bin目录:在/ usr /本地/ git的/ bin中:/用户/amills001c/golang/bin:/Users/amills001c/apache-maven-3.3.3/bin:/Users/amills001c/.rvm/bin
你为什么认为终端应该运行默认终端?它在其他任何环境中都有效吗? –
也许我很迷惑Windows和OSX,但那是我的印象。但是现在,“终端”在命令行中无法识别。我只想打开任何终端窗口,不管它是OSX上的默认bash终端还是我的Mac上的应用程序/实用程序中的iterm2/iterm3 –
,我有terminal.app,我想我可以运行该 –