【问题标题】:Kill localhost:3000 process from Windows command line从 Windows 命令行中杀死 localhost:3000 进程
【发布时间】:2012-11-21 00:24:34
【问题描述】:

所以我在窗户的导轨上使用 ruby​​(我听到你们都把咖啡吐到屏幕上),这只是短期的事情。 (在家里使用 ubuntu)所以我今天下午尝试启动 webrick 并收到错误消息

TCPServer Error, only one usage of each socket address is normally permitted

所以从上周开始,3000 端口似乎仍在运行?我的问题是如何从 Windows 命令行终止该进程。通常我必须按 ctrl 并在 Windows 中暂停/中断,因为 ctrl c 不起作用,这只会杀死看起来的批处理过程..

欢迎任何解决方案

编辑

好像

tasklist 

会给我进程列表,但是我在哪里可以找到运行 webrick 服务器的进程?

ruby.exe 未列为正在运行的进程

【问题讨论】:

    标签: ruby-on-rails-3 windows-7 command-line


    【解决方案1】:

    进入rails_project\tmp\pids 并删除其中的 .pid 文件。

    运行:

    rails server
    

    【讨论】:

      【解决方案2】:

      尝试使用netstat -a -o -n 来确定在端口3000 上运行的进程的pid。然后您应该能够使用taskkill /pid #### 来终止该端口上运行的任何进程。

      可能不是最优雅的方式,但我认为它应该有效。

      编辑

      您可能还必须使用/F 标志来强制终止进程。我刚刚在本地机器上试了一下,效果很好。

      【讨论】:

      • 非常感谢,一直在到处寻找,是的,我被拒绝访问,语法是 taskkill /F pid ###
      • 是的,应该这样做。因此,如果 netstat 显示的 pid 为 6688,那么命令将是 taskkill /F /pid 6688。另外,我尝试从 Git Bash 运行它,但无济于事。不过在命令提示符下工作正常。
      • 确保在这些标志之间放置一个空格! taskkill /F /pid ####
      • 是的,这是我的间距,命令是正确的,但我的访问被拒绝,所以进程无法终止。你知道这是为什么吗?
      • 没关系,我用 ctrl shift enter 打开了 cmd。这给了我管理员权限
      猜你喜欢
      • 1970-01-01
      • 2014-05-18
      • 2015-09-25
      • 2019-01-22
      • 1970-01-01
      • 2019-02-04
      • 2013-02-03
      • 1970-01-01
      相关资源
      最近更新 更多