前台运行进程的终止方法(直接可见的终端窗口)
-
通用快捷键终止
在运行Node程序的终端窗口中,按下组合键:- Ctrl + C(Windows/Linux/macOS通用)
大多数情况下会立即停止进程,若未响应,尝试连续按两次。
- Ctrl + C(Windows/Linux/macOS通用)
-
强制终止无响应的进程
- Ctrl + \(Windows/Linux/macOS)
生成核心转储并强制退出,适用于程序卡死的情况。
- Ctrl + \(Windows/Linux/macOS)
后台运行进程的终止方法(无可见终端窗口)
Windows 系统
-
通过任务管理器
- 按
Ctrl + Shift + Esc
打开任务管理器 → 在”进程”标签页中找到node.exe
→ 右键选择”结束任务”。
- 按
-
命令行终止
taskkill /f /im node.exe # 强制终止所有Node进程
- 精准终止指定进程:
tasklist | find "node" # 查找进程ID(PID) taskkill /pid <PID> /f # 替换<PID>为实际ID
- 精准终止指定进程:
macOS / Linux 系统
-
查找进程ID(PID)
ps aux | grep node # 列出所有Node进程及其PID
- 示例输出:
user 1234 0.0 0.5 987654 3210 pts/0 Sl+ 10:00 node app.js
- 示例输出:
-
终止单个进程
kill -9 1234 # 将1234替换为实际PID(-9表示强制终止)
-
终止所有Node进程
pkill -9 node # 强制结束所有名为"node"的进程
使用进程管理工具(推荐长期运行场景)
若使用 PM2 等工具管理Node应用:
pm2 stop <app_name> # 停止指定应用 pm2 stop all # 停止所有应用 pm2 delete <app_name> # 彻底删除应用
特殊情况处理
-
端口占用导致无法重启:
结束进程后若提示端口被占用,运行:lsof -i :3000 # 查看3000端口的占用进程(macOS/Linux) netstat -ano | findstr :3000 # Windows查看端口
根据返回的PID重复第二步终止操作。
-
VS Code 终端无响应:
关闭集成终端窗口 → 重新打开新终端 → 用ps
或tasklist
查找残留进程并终止。
注意事项
- 数据安全:
强制终止(kill -9
或/f
)可能导致未保存数据丢失,仅在前台终止无效时使用。 - 权限问题:
Linux/macOS 需sudo
终止他人启动的进程(如sudo kill -9 PID
)。 - 进程残留:
结束进程后,用ps
或tasklist
确认是否清除成功。
为什么推荐信号终止?
Ctrl + C
发送SIGINT
信号,允许程序优雅退出(如关闭数据库连接)。kill -9
发送SIGKILL
是最后手段,可能产生临时文件残留。
引用说明:本文方法参考自 Node.js 官方文档进程管理指南、GNU Bash 手册及 Microsoft Windows 命令行工具文档,操作前请确保理解命令后果,生产环境建议结合日志监控工具(如 PM2)。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6056.html