目 录CONTENT

文章目录

linux

~梓
2026-05-20 / 0 评论 / 0 点赞 / 3 阅读 / 0 字
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

一、知道端口 8080,如何找到项目位置?

方法1:lsof 命令(最直接)

sudo lsof -i :8080

输出示例:

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
uvicorn  1234 root    3u  IPv4  12345      0t0  TCP *:8080 (LISTEN)

然后根据 PID 查进程详情:

# 查看进程的工作目录
pwdx 1234

# 或者查看进程的完整信息
ps -ef | grep 1234

方法2:netstat + ps 组合

# 找到 PID
sudo netstat -tlnp | grep 8080

# 输出:tcp  0  0 0.0.0.0:8080  0.0.0.0:*  LISTEN  1234/uvicorn

# 查看进程详情
ps -ef | grep 1234

方法3:ss 命令(现代 Linux 推荐)

sudo ss -tlnp | grep 8080

方法4:查进程的环境变量和启动命令

# 查看进程的完整启动命令(会显示项目路径)
cat /proc/1234/cmdline | tr '\0' ' '

# 查看进程的工作目录
ls -l /proc/1234/cwd

二、如何杀掉这个服务?

方法1:通过 PID 杀掉

# 先找到 PID
sudo lsof -i :8080
# 假设 PID 是 1234

# 杀掉进程
kill 1234          # 正常终止
kill -9 1234       # 强制终止(如果上面不行)

方法2:一行命令直接杀

# 杀掉占用 8080 端口的进程
sudo lsof -ti :8080 | xargs kill

# 强制杀
sudo lsof -ti :8080 | xargs kill -9

方法3:按进程名杀掉

# 杀掉所有 uvicorn 进程
pkill uvicorn

# 强制杀
pkill -9 uvicorn

# 杀掉所有 node 进程(npm run dev)
pkill node

方法4:杀掉 tmux 会话中的服务

# 查看 tmux 会话
tmux ls

# 进入会话后 Ctrl+C 停止,或者直接杀掉会话
tmux kill-session -t backend
tmux kill-session -t frontend

三、完整操作示例

# 1. 查看谁占了 8080
sudo lsof -i :8080

# 输出:
# uvicorn  3456 root  3u  IPv4  ...  TCP *:8080 (LISTEN)

# 2. 查看项目位置
pwdx 3456
# 输出:/home/user/my-backend-project

# 3. 杀掉进程
kill 3456

# 4. 确认已释放
sudo lsof -i :8080
# 无输出,表示端口已释放

四、快速参考卡片

需求 命令
查看端口占用 sudo lsof -i :8080
查看进程工作目录 pwdx <PID>
查看完整启动命令 cat /proc/<PID>/cmdline
正常杀进程 kill <PID>
强制杀进程 kill -9 <PID>
按端口杀 sudo lsof -ti :8080 | xargs kill
按进程名杀 pkill uvicorn
0

评论区