Ubuntu 24.04 命令行常用

rm删除文件/文件夹

rm -rf *   #强制递归删除目录

rm -f test.txt #强制删除文件(不询问)

rm -r mydir #删除目录(文件夹)

小技巧

  • 想防止误删:可以给 rm 加别名 alias rm='rm -i',每次删除都询问;
  • 重要环境,尽量不要直接用 rm -rf,优先先移动文件到临时目录再确认删除。

tmux的用法

tmux                  # 创建无名会话并进入
tmux new -s work      # 创建名为 work 的会话(推荐命名)
tmux ls               # 列出所有会话(tmux list-sessions)
tmux attach -t work   # 接入 work 会话(tmux a -t work 简写)
tmux kill-session -t work # 删除 work 会话
tmux kill-server      # 一次性关闭所有tmux会话

会话内快捷键(Ctrl+b 松开后再按)

  • d:detach 脱离会话,程序后台继续运行(最常用!)
  • $:重命名当前会话
  • s:打开会话选择列表,上下切换会话

ss查询端口占用

# 查看所有监听端口(TCP+UDP,数字显示)
ss -tuln

# 查看指定端口,例如 8080
ss -tuln | grep :8080

# 显示进程PID(需要root)
sudo ss -tulnp | grep :8080

参数:

  • -t TCP,-u UDP
  • -l 只看监听端口
  • -n 数字端口,不解析域名
  • -p 进程名 / PID

lsof(直接查端口占用,开发常用)

# 查询8080端口占用,需要sudo
sudo lsof -i :8080

# 只输出PID(一键杀进程)
sudo lsof -t -i :8080

# 杀掉占用8080端口进程(谨慎!)
kill -9 $(lsof -t -i:8080)

kill 命令

# 优雅终止进程(推荐首选)
kill 1234

# 显式发送SIGTERM,同上
kill -15 1234

# 强制杀死进程(进程卡死、不响应15信号时才用)
kill -9 1234

# 给多个进程发信号
kill 1234 5678

# 查看所有可用信号列表
kill -l

killall:按进程名杀(不用 PID)

# 优雅杀掉所有 nginx 进程
killall nginx

# 强制杀掉所有 python3 进程
killall -9 python3

pkill:按名字 / 匹配规则杀(更灵活)

# 匹配名字包含 java 的进程,优雅终止
pkill java

# 强制杀死
pkill -9 java

# 只杀当前用户的进程
pkill -u $USER python

配套组合(结合前面端口查询)

# 获取占用8080端口的PID并优雅杀掉
kill $(lsof -t -i:8080)

# 强制杀占用8080端口进程
kill -9 $(lsof -t -i:8080)

简单流程建议

  1. kill <PID> 优雅退出
  2. 等待几秒,用 ps -ef | grep <PID> 确认进程是否消失
  3. 如果进程还在,再使用 kill -9 <PID>

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注