进程管理-kill ⚙️ — 发送信号给进程

作用

kill 通过 PID 向进程发送信号,默认发送 TERM(15)请求终止进程。

语法

1
kill [选项] PID...

用法

kill 默认发 TERM 信号优雅终止进程。常用信号:15(TERM)请求终止、9(KILL)强制终止、1(HUP)重载配置、2(INT)中断。-l 列出所有信号名。注意:先试 TERM(15),无效再用 KILL(9)。

常用参数

参数 说明
-l 列出所有信号
-15 SIGTERM(请求终止,默认)
-9 SIGKILL(强制终止)
-1 SIGHUP(重载配置)
-2 SIGINT(中断)

示例

1
2
3
4
5
6
kill 1234                       # 默认发送 TERM 信号
kill -15 1234 # 发送 SIGTERM(请求终止)
kill -9 1234 # 发送 SIGKILL(强制杀死)
kill -1 5678 # 发送 SIGHUP(重载配置)
kill -l # 列出所有可用信号
kill -INT 1234 # 发送 SIGINT(中断)

来源:菜鸟教程

📖 课程位置

本命令在以下课程中讲解:Day 3:进程查看与管理 | Day 5:本周串联实操

进程管理-killall ⚙️ — 按名称杀死进程

作用

killall 按进程名匹配并发送信号,杀死所有匹配的进程实例。

语法

1
killall [选项] 进程名

用法

killall 按名称批量操作,比 kill 更便捷但需避免误杀同名进程。-I 忽略大小写,-9 强制终止,-u 用户 只杀指定用户的进程,--exact 精确匹配进程名。killall nginx 重启 Nginx 所有工作进程。

常用参数

参数 说明
-I 忽略大小写
-9 SIGKILL 强制终止
-u 用户 只杀指定用户的进程
--exact 精确匹配
--older-than N 运行超过 N 秒的
--younger-than N 运行少于 N 秒的

示例

1
2
3
4
killall nginx                    # 杀死所有 nginx 进程
killall -9 java # 强制杀死所有 java 进程
killall -I python3 # 忽略大小写匹配
killall -u ALICE --exact node # 只杀 ALICE 用户下名为 node 的进程

来源:菜鸟教程

进程管理-nice ⚙️ — 设置进程优先级启动

作用

nice 以指定调度优先级启动进程,范围 -20(最高)到 19(最低),默认 0。

语法

1
nice [选项] 命令

用法

nice 在启动时设置 CPU 调度优先级。-n 19 以最低优先级运行(不影响系统响应),-n -20 最高优先级(仅 root)。普通用户只能降低优先级(正 nice)。

常用参数

参数 说明
-n N 设置 nice 值(-20 到 19)
--adjustment=N 同上

示例

1
2
3
nice -n 19 ./HEAVY-TASK         # 最低优先级运行,不影响系统
nice -n 10 make # 降低编译优先级
nice -n -5 ./URGENT-TASK # 提高优先级(需 root)

来源:菜鸟教程

进程管理-nohup ⚙️ — 后台运行(忽略挂断)

作用

nohup(no hang up)使命令忽略 HUP 信号继续运行,终端退出后进程不终止,输出默认保存到 nohup.out

语法

1
nohup 命令 [参数...]

用法

nohup 确保命令在退出登录后继续运行。输出默认追加到 nohup.out,可重定向:nohup CMD > OUTPUT.LOG 2>&1 && 放到后台执行。远程 SSH 会话中防止任务随断开而终止的标配。

常用参数

参数 说明
& 放后台执行
> FILE 重定向输出
2>&1 错误也定向到输出

示例

1
2
3
4
nohup sleep 100 &                         # 后台运行,退出终端不中断
nohup python SERVER.PY > SERVER.LOG 2>&1 & # 后台运行并重定向输出
nohup bash SCRIPT.SH & # 后台运行脚本
nohup ./LONG-TASK & # 后台运行耗时任务

来源:菜鸟教程

进程管理-pgrep ⚙️ — 按条件查找进程 PID

作用

pgrep 按模式匹配进程名并返回 PID,常用于脚本中检查进程是否存在。

语法

1
pgrep [选项] 模式

用法

pgrep 模式匹配进程名。-u 用户 筛选用户,-l 同时显示进程名,-x 精确匹配,-g 组 按组筛选。脚本中常用 pgrep nginx 检查进程是否存在。

常用参数

参数 说明
-u 用户 按用户筛选
-l 同时显示进程名
-x 精确匹配
-g 组 按组筛选
-t 终端 按终端筛选
-c 只显示匹配数量

示例

1
2
3
4
pgrep nginx                      # 查找 nginx 的 PID
pgrep -u ALICE -l # 查找 ALICE 的进程并显示名称
pgrep -x -u ALICE node # 精确匹配 ALICE 的 node 进程
pgrep -c ssh # 统计 ssh 进程数量

来源:菜鸟教程

进程管理-pidof ⚙️ — 查找进程 PID

作用

pidof 按精确程序名返回 PID,多实例时返回所有 PID。

语法

1
pidof [选项] 程序名

用法

pidof 比 pgrep 更严格(精确匹配进程名)。-c 只显示同根目录的进程,-s 单次模式只返回一个 PID。适合在脚本中获取特定守护进程的 PID。

常用参数

参数 说明
-c 只显示同根目录的进程
-s 单次模式(只返回一个 PID)
-o PID 排除指定 PID

示例

1
2
3
pidof nginx                      # 查找 nginx 的 PID
pidof -c nginx # 只显示同根目录的 nginx 进程
pidof nginx mysqld # 同时查找多个程序

来源:菜鸟教程

进程管理-pkill ⚙️ — 按模式匹配杀死进程

作用

pkill 按进程名、用户、终端等多条件筛选后发送信号,比 killall 更灵活。

语法

1
pkill [选项] 模式

用法

pkill 支持按进程名模式匹配。-x 精确匹配,-u 用户 限制用户,-t 终端 限制终端,--newest 只杀最新进程,--oldest 只杀最旧进程。-9 信号常组合使用。

常用参数

参数 说明
-x 精确匹配进程名
-u 用户 按用户筛选
-t 终端 按终端筛选
--newest 只匹配最新进程
--oldest 只匹配最旧进程
-9 SIGKILL
-15 SIGTERM

示例

1
2
3
4
pkill -9 nginx                   # 按名称匹配强制杀死
pkill -u ALICE -x node # 精确匹配 ALICE 的 node 进程
pkill --newest java # 只杀死最新的 java 实例
pgrep -l -t PTS/0 # 列出终端 PTS/0 上的进程(不杀)

来源:菜鸟教程

📖 课程位置

本命令在以下课程中讲解:Day 3:进程查看与管理 | Day 5:本周串联实操

进程管理-ps ⚙️ — 显示进程快照

作用

ps(process status)显示当前系统的进程快照,常用组合 ps aux 查看所有用户进程,是进程查看的基础命令。

语法

1
ps [选项]

用法

ps 常用组合:ps aux 显示所有用户进程(BSD 风格),ps -ef 全格式列表(标准风格),ps -eo PID,PPID,CMD,%CPU 自定义字段。--sort=-%CPU 按 CPU 降序,-p PID 显示指定进程。配合 grep 查找特定进程。

常用参数

参数 说明
a 所有用户进程
u 显示用户格式
x 无终端进程
-e 全格式列表
-f 全格式
-o 字段 自定义输出字段
--sort 排序
-p PID 显示指定进程

示例

1
2
3
4
5
ps aux                          # 查看所有用户进程
ps -ef # 全格式进程列表
ps aux | grep nginx # 查找 nginx 相关进程
ps -eo PID,%CPU,%MEM --sort=-%CPU | head # 按 CPU 降序取前 10
ps -fp 1234 # 查看指定 PID 的详细信息

来源:菜鸟教程

📖 课程位置

本命令在以下课程中讲解:Day 3:进程查看与管理 | Day 5:本周串联实操

网络管理-ping 🌐 — 测试网络连通性

作用

ping 通过发送 ICMP(Internet Control Message Protocol)回显请求包并等待目标主机回复,检测网络连通性、测量往返时间(RTT)和丢包率,是网络故障排查最基础的工具。

语法

1
ping [选项] 目标

用法

ping 默认持续发送 ICMP 包直到手动停止(Ctrl+C)。-c 次数 发送指定数量后自动停止;-i 秒 指定发送间隔(默认 1 秒);-W 秒 设置超时时间;-s 字节 指定包大小;-q 静默模式(只输出统计信息);-4 使用 IPv4;-6 使用 IPv6。按 Ctrl+C 后显示丢包率和 RTT 统计。

常用参数

参数 说明
-c 次数 发送次数
-i 秒 发送间隔
-W 秒 超时时间
-s 字节 包大小
-q 静默模式
-4 IPv4
-6 IPv6

示例

1
2
3
4
ping -c 4 GOOGLE.COM             # 发送 4 个包测试连通性
ping -c 10 -s 1400 192.168.1.1 # 发送 10 个 1400 字节的大包
ping -i 0.5 -c 20 BAIDU.COM # 每 0.5 秒发 1 个包共 20 次
ping -4 -c 4 LOCALHOST # 使用 IPv4 测试本机回环

来源:菜鸟教程

📖 课程位置

本命令在以下课程中讲解:Day 1:网络诊断 | Day 5:本周串联实操

网络管理-route-arp / arp 🌐 — 路由与 ARP 缓存

作用

route 显示或操作内核 IP 路由表,添加/删除路由。arp 查看和修改 ARP 缓存表(IP 到 MAC 地址的映射)。两者均为传统网络工具,现代系统推荐使用 ip routeip neigh 替代。

route

1
route [选项]

查看路由表:-n 数字格式显示;-e 显示路由度量值;-v 版本。添加路由:route add -net 192.168.2.0/24 gw 192.168.1.1;添加默认网关:route add default gw 192.168.1.1;删除路由:route del -net 192.168.2.0/24

arp

1
arp [选项]

查看 ARP 缓存:-a 显示所有条目;-n 数字格式。arp -d IP 删除指定 ARP 条目,arp -s IP MAC 添加静态 ARP 条目。

常用参数

参数 说明
-n(route) 数字格式
-e(route) 显示度量值
-a(arp) 显示所有 ARP 条目
-d IP(arp) 删除 ARP 条目
-s IP MAC(arp) 添加静态条目

示例

1
2
3
4
5
route -n                         # 数字格式查看路由表
route add default gw 192.168.1.1 # 添加默认网关
route del -net 192.168.2.0/24 # 删除网段路由
arp -a # 查看所有 ARP 缓存条目
arp -d 192.168.1.100 # 删除指定 ARP 条目

已被 ip routeip neigh 替代。


来源:菜鸟教程

0%