我在Mac OS X终端上启动了一个“rails服务器”.假设我刚刚在该终端中按Ctrl c,我可以关闭它.但我不小心关闭了终端,现在我无法关闭它.
我开始了另一个测试项目,再次尝试“rails server”,我得到了
Address already in use – bind(2) (Errno::EADDRINUSE)” error.
谁能帮忙?
解决方法
您可以使用killall -9 rails在名称中使用“rails”来杀死所有正在运行的应用程序.
该应用程序应该已经死了,当窗口关闭,但我已经看到Ruby和/或Rails应用程序坚持.您可以让系统告诉您是否有任何“ruby”或“rails”应用程序正在运行以下命令之一:
ps auxw | grep ruby ps auxw | grep rails`
这是第一个的输出:
greg 14461 0.3 0.7 2483432 15000 s001 S+ 10:10PM 1:03.43 /Users/greg/.rvm/rubies/ruby-1.9.2-p0/bin/ruby script/rails c
您可以看到正在运行的应用程序的路径,这将有助于识别该作业.第二列中的数字是进程ID.杀-914461会杀死它.或者,像上面那样,killall命令将通过在名称中搜索带有rails的应用程序来实现.