Linux Shell 命令总清单
更新时间:2026-08-28。本文把本站
linux/域覆盖的 Linux Shell 命令 按 20 大命令族 汇总成一份总清单,共 580+ 个命令。每个命令附一句话作用,并链接到对应速查文档;速查文档里还有完整参数与示例。「一个命令一个文档」的拆分工作以此清单为基底。
怎么用这份清单
- 查命令:按功能定位到对应命令族,看命令与一句话作用。
- 查参数/示例:点表格里的族链接跳到速查文档。
- 拆单文档:本清单是「一个命令 = 一篇文档」拆分工作的索引,后续按命令逐篇展开。
| 命令族 | 文档链接 | 命令数 |
|---|---|---|
| 文件与目录速查 | 文件与目录速查 | 34 |
| 文本处理与搜索速查 | 文本处理与搜索速查 | 37 |
| 进程与系统速查 | 进程与系统速查 | 40 |
| 网络速查 | 网络速查 | 31 |
| 用户与权限速查 | 用户与权限速查 | 32 |
| 磁盘与存储速查 | 磁盘与存储速查 | 26 |
| 软件包与服务速查 | 软件包与服务速查 | 30 |
| 压缩归档与其他速查 | 压缩归档与其他速查 | 35 |
| 性能观测与调试速查 | 性能观测与调试速查 | 38 |
| Shell 内建速查 | Shell 内建速查 | 24 |
| 安全加密与审计速查 | 安全加密与审计速查 | 29 |
| 硬件信息与内核模块速查 | 硬件信息与内核模块速查 | 24 |
| 容器与云原生速查 | 容器与云原生速查 | 28 |
| 现代命令行工具速查 | 现代命令行工具速查 | 28 |
| 文件系统与 LVM 速查 | 文件系统与 LVM 速查 | 36 |
| 网络进阶与压测速查 | 网络进阶与压测速查 | 27 |
| 终端复用与编辑器速查 | 终端复用与编辑器速查 | 19 |
| 日志、时间与计划任务速查 | 日志、时间与计划任务速查 | 21 |
| 开发构建与二进制速查 | 开发构建与二进制速查 | 22 |
| 结构化数据速查 | 结构化数据速查 | 19 |
合计 580 个命令(含别名与跨族重复)。
一、命令清单(按族展开)
文件与目录速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
pwd | 打印当前工作目录的绝对路径 |
cd | 切换目录 |
ls | 列出目录内容 |
tree | 树状显示目录结构,看项目骨架很直观 |
stat | 显示文件详细状态,含大小、权限、三个时间戳与 inode 号 |
file | 探测文件真实类型 |
mkdir | 创建目录 |
rmdir | 删除空目录 |
touch | 创建空文件,或更新已有文件的时间戳 |
rm | 删除文件或目录 |
shred | 安全覆写删除,多次覆写后删除,防恢复 |
mktemp | 创建唯一的临时文件/目录,避免并发脚本互相踩踏 |
install | 复制文件并设置权限/属主,一条命令完成"拷贝+改权限",Makefile 里常用 |
cp | 复制文件或目录 |
mv | 移动或重命名 |
ln | 创建链接 |
readlink | 读取软链接指向的路径 |
realpath | 输出规范化的绝对路径 |
basename | 取路径的文件名部分 |
dirname | 取路径的目录部分 |
rename | 批量重命名 |
find | 按名称、类型、大小、时间、权限等条件查找文件 |
locate | 按索引数据库快速定位,速度快但结果可能不是最新 |
which | 在 $PATH 中定位可执行命令的路径 |
whereis | 查找命令的二进制、源码与手册页位置 |
type | 显示命令类型: |
chmod | 修改文件权限 |
chown | 修改属主与属组 |
chgrp | 只修改属组 |
umask | 设置新建文件/目录的默认权限掩码 |
setfacl | 设置 ACL,给指定用户/组单独授权,也可设默认继承规则 |
getfacl | 查看 ACL 规则,权限用 + 标记的文件说明配了 ACL |
inotifywait | 等待并输出文件系统事件,常用于"文件一变化就触发动作"的脚本 |
inotifywatch | 统计一段时间内文件系统事件的发生次数,用于分析"谁在频繁读写" |
文本处理与搜索速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
cat | 连接并输出文件内容,适合短文件 |
tac | 反向输出 |
rev | 把每行字符反转 |
less | 分页查看,支持前后翻页与搜索,看大文件首选 |
head | 查看文件开头 |
tail | 查看文件结尾 |
nl | 带行号输出 |
grep | 按正则搜索文本并输出匹配行 |
egrep | grep 的扩展正则别名,等价于 grep -E |
fgrep | 固定字符串搜索,不做正则解析,因此最快且 .、* 等按字面处理 |
strings | 从二进制文件中提取可读字符串,排查未知二进制时很有用 |
look | 按字典序查找以指定前缀开头的行 |
cut | 按分隔符或字符位置切出指定列 |
paste | 把多个文件按行并排拼接 |
join | 按公共字段连接两个已排序文件,类似 SQL 的 JOIN |
sort | 排序 |
uniq | 去重 |
comm | 比较两个已排序文件,输出三列: |
wc | 统计行数/词数/字节数 |
tr | 字符级替换或删除,只处理单字符,不能替换字符串 |
fold | 按指定宽度折行 |
fmt | 重新排版段落,让每行长度均匀,写文本文件时有用 |
sed | 流编辑器,逐行处理,主力是替换与删除 |
awk | 按字段处理并可编程,做统计报表的主力 |
diff | 逐行比较两个文件的差异 |
cmp | 逐字节比较,找到第一处不同就停,比 diff 快 |
split | 把大文件拆成多个小文件 |
csplit | 按内容模式拆分文件 |
tee | 数据分流: |
xargs | 把标准输入转换成命令行参数 |
column | 把输入按列对齐成表格 |
pr | 给文本加页眉页脚并分栏,格式化打印用 |
od | 八进制/十六进制转储,看文件的原始字节 |
hexdump | 十六进制查看,比 od 更易读 |
xxd | 十六进制转储,也可反向还原,编辑二进制时用 |
base64 | Base64 编码与解码,传输二进制或嵌入配置常用 |
iconv | 字符编码转换,解决中文乱码 |
进程与系统速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
ps | 查看进程快照 |
pgrep | 按名称或模式查找 PID,比 ps |
pidof | 按程序名取 PID |
top | 实时进程监控,系统自带的标配 |
htop | top 的增强版,彩色、支持鼠标、树形展示 |
kill | 向指定 PID 发送信号 |
pkill | 按名称或模式发信号给匹配的进程 |
killall | 按程序名结束进程 |
nice | 以指定优先级启动进程 |
renice | 调整运行中进程的优先级 |
nohup | 让进程忽略挂起信号,终端关闭后继续运行 |
jobs | 列出当前 shell 的后台任务 |
bg | 把暂停的任务转到后台继续运行 |
fg | 把后台任务调回前台 |
wait | 等待后台任务结束,脚本里做同步用 |
timeout | 限时运行命令,超时自动结束,防止任务卡死 |
watch | 周期性执行某命令并全屏刷新显示 |
tload | 用 ASCII 图形实时显示系统平均负载曲线 |
uptime | 显示运行时长、登录用户数与 1/5/15 分钟平均负载 |
time | 测量命令执行的耗时 |
unshare | 在新的命名空间里运行程序,制造隔离环境 |
nsenter | 进入指定进程所在的命名空间,常用于"进入容器但容器里没装 shell 工具" |
cgexec | 在指定 cgroup 中运行程序,限制其资源使用 |
systemd-cgls | 按 cgroup 层级显示进程树,看服务/容器的资源归属 |
uname | 内核与系统信息 |
hostname | 主机名 |
who | 当前登录的用户 |
w | 登录用户及其活动,含负载和各自在跑什么 |
id | 用户与组的身份信息 |
date | 显示或设置日期时间 |
cal | 日历 |
procinfo | 显示内核与系统统计摘要 |
lscpu | CPU 架构信息: |
free | 内存使用概览 |
vmstat | 系统整体统计: |
mpstat | 每核 CPU 使用率统计,看 CPU 是否均衡 |
slabtop | 实时显示内核 slab 缓存占用,排查内核对象耗尽 |
dmesg | 内核环形缓冲区日志,看内核消息、硬件错误、OOM 记录 |
lsmod | 列出已加载的内核模块 |
sysctl | 查看与设置内核参数 |
网络速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
ping | ICMP 连通性与延迟测试 |
traceroute | 追踪数据包经过的每一跳路由 |
mtr | ping 与 traceroute 的结合,持续统计每跳的丢包与延迟,定位网络质 |
telnet | 明文远程登录,现在主要用来手工测端口并直接敲协议 |
curl | 多功能传输工具,调试 HTTP 接口的事实标准 |
wget | 下载工具,支持递归镜像与断点续传 |
rsync | 增量同步,只传变化的部分,远程同步与备份首选 |
ssh | 安全远程登录 |
scp | 基于 SSH 的远程复制,简单场景够用 |
ssh-keygen | 生成 SSH 密钥对 |
ssh-copy-id | 把公钥装到远程主机,配置免密登录 |
ssh-keyscan | 收集远程主机的公钥,用于批量预置 known_hosts、避免首次连接的交互确认 |
ss | 套接字统计,现代首选,比 netstat 快很多 |
netstat | 传统套接字统计,老系统仍在用 |
lsof | 列出打开的文件,Linux 里套接字也是文件,因此能查端口占用 |
nmap | 端口扫描与主机发现,安全检查与网络探测工具 |
ip addr | 查看/配置 IP 地址 |
ip link | 查看/配置网络接口状态 |
ip route | 查看/配置路由表 |
ip neigh | 查看/管理邻居表 |
ip -s link | 显示接口的流量统计,看丢包、错误、错包计数 |
ifconfig | 传统接口配置 |
route | 传统路由查看 |
arp | 传统 ARP 缓存查看 |
ethtool | 查看/调整网卡参数: |
nslookup | 域名解析查询,交互/非交互都支持 |
dig | 功能最全的 DNS 查询工具,排查解析问题首选 |
host | 简版 DNS 查询,输出最简洁 |
getent | 从系统数据库查询 |
iptables | 传统 IPv4 防火墙 |
tcpdump | 命令行抓包,网络排障的终极手段 |
用户与权限速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
useradd | 创建新用户 |
usermod | 修改已有用户属性 |
userdel | 删除用户 |
passwd | 设置或修改密码 |
chpasswd | 批量修改密码,从标准输入读"用户名:密码"对,适合初始化脚本 |
getent | 从系统数据库查询条目,比直接 grep /etc/passwd 更可靠 |
pwck | 检查 /etc/passwd 与 /etc/shadow 的一致性,手改过用户文 |
vipw | 安全地编辑 /etc/passwd,会加锁防止并发编辑改坏文件 |
groupadd | 创建新组 |
groupdel | 删除组 |
groupmod | 修改组属性 |
gpasswd | 管理组成员与组密码 |
grpck | 检查 /etc/group 与 /etc/gshadow 的一致性 |
vigr | 安全编辑 /etc/group |
groups | 查看用户所属的组 |
newgrp | 临时切换有效组,之后新建的文件归属新组 |
sg | 以指定组的身份执行单条命令,不影响当前会话 |
su | 切换用户身份 |
sudo | 以其他用户 |
visudo | 安全编辑 sudoers 配置,保存时会校验语法,防止改错导致所有人都用不了 s |
sudoedit | 以 root 权限安全地编辑文件 |
logname | 显示最初登录的用户名,与 whoami 不同 |
whoami | 显示当前有效用户名 |
chmod | 修改文件权限 |
chown | 修改属主与属组 |
chgrp | 只修改属组 |
umask | 设置新建文件/目录的默认权限掩码 |
last | 显示最近登录记录 |
lastb | 显示失败的登录尝试 |
lastlog | 显示所有用户的最后一次登录时间 |
who | 显示当前登录的用户 |
ac | 统计用户的连接总时长 |
磁盘与存储速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
df | 显示文件系统的空间使用情况 |
du | 统计目录或文件的磁盘占用 |
lsblk | 以树状显示块设备 |
blkid | 查看块设备的 UUID、文件系统类型与卷标 |
mount | 挂载文件系统 |
umount | 卸载文件系统 |
findmnt | 查看当前的挂载树,比 mount 输出清晰 |
fuser | 查看占用文件或挂载点的进程,卸载失败时的排查工具 |
fdisk | 经典的分区工具 |
parted | 支持 GPT 与 MBR 的分区工具,适合大容量盘 |
partprobe | 通知内核重读分区表,分区后不用重启就能看到新分区 |
mkfs | 创建文件系统 |
mkswap | 把分区或文件初始化为 swap 空间 |
swapon | 启用 swap 设备或文件 |
swapoff | 停用 swap,把数据换回内存 |
free | 查看内存与 swap 使用 |
fsck | 文件系统检查与修复的前端,会自动调用对应类型的检查工具 |
e2fsck | ext2/3/4 专用的检查修复工具 |
smartctl | 读取磁盘 S.M.A.R.T. 健康信息,提前发现硬盘故障 |
badblocks | 检测磁盘坏块 |
sync | 把内核缓冲区里的脏数据刷入磁盘,确保数据真正落盘 |
dd | 块级复制与转换,能直接读写设备 |
losetup | 把文件关联成回环设备,从而能挂载磁盘镜像 |
resize2fs | 调整 ext 文件系统的大小 |
tune2fs | 调整 ext 文件系统的参数 |
fstrim | 向 SSD 下发 TRIM 指令,告知哪些块可回收,维持长期写入性能 |
软件包与服务速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
apt | 高级包工具,日常主力 |
apt-get | apt 的传统接口,脚本里更常见 |
apt-cache | 查询包索引 |
dpkg | 底层包工具,管理 .deb 包本身 |
add-apt-repository | 添加或移除软件源 |
dnf | 新一代包管理器,RHEL 8+/Fedora 默认 |
yum | 传统包管理器,CentOS 7 及更早版本的默认 |
rpm | 底层 RPM 包管理工具 |
zypper | openSUSE / SLES 的包管理器 |
apk | Alpine Linux 的包管理器,容器镜像里最常见 |
snap | Canonical 推的跨发行版打包格式,自带依赖、沙箱运行 |
flatpak | 另一个跨发行版的桌面应用打包方案 |
systemctl | systemd 的主管理命令 |
systemctl daemon-reload | 重新加载 systemd 配置,改了 unit 文件后必须执行,否则改动 |
systemctl edit | 安全地覆盖服务的部分配置 |
systemctl mask | 屏蔽服务,禁止以任何方式启动 |
journalctl | 查看 systemd 收集的日志 |
journalctl --disk-usage | 查看日志占用的磁盘空间,日志太大时可据此清理 |
systemd-analyze | 分析系统启动性能 |
systemctl list-timers | 列出所有定时器 |
service | SysV 兼容的服务管理命令 |
chkconfig | SysV 的开机自启管理 |
update-rc.d | SysV 的开机自启管理 |
crontab | 管理用户的定时任务表 |
at | 一次性定时任务 |
timedatectl | 时间与时区管理 |
hostnamectl | 主机名管理 |
localectl | 系统语言与键盘布局 |
loginctl | 管理登录会话与席位 |
update-alternatives | 管理系统里同一软件的多个版本 |
压缩归档与其他速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
tar | 打包与解包,可组合各种压缩算法 |
zstd | 现代压缩算法,压缩率接近 xz 但速度快一个量级,解压极快,正在成为新标 |
lz4 | 极速压缩,压缩率一般,主打"几乎不影响性能",常用于实时压缩与内存转储 |
zip | 创建 zip 压缩包,可含多个文件与目录 |
unzip | 解压 zip |
7z | 7-Zip 命令行版,支持几乎所有格式,压缩率高 |
cpio | 传统归档工具,RPM 包内部与 initramfs 用它 |
pax | POSIX 标准的归档工具,兼顾 tar 与 cpio 格式 |
md5sum | 计算 MD5 校验和 |
sha256sum | 计算 SHA-256 校验和,目前的安全标准,下载校验首选 |
sha512sum | SHA-512 校验和,摘要更长 |
base64 | Base64 编解码,把二进制转成可打印字符以便嵌入文本 |
xxd | 十六进制转储,可反向还原,分析/编辑二进制文件 |
od | 八进制或任意进制转储,查看原始字节 |
echo | 输出字符串 |
printf | 格式化输出,比 echo 可控 |
seq | 生成数字序列,循环里常用 |
alias | 定义命令别名,把长命令缩短 |
history | 命令历史 |
shuf | 随机打乱行顺序或随机抽样 |
yes | 持续重复输出字符串,用于自动应答 |
bc | 命令行计算器,支持任意精度 |
clear | 清屏 |
man | 查看手册页,最权威的本地文档 |
info | 查看 GNU info 文档,比 man 更详细、带超链接 |
whatis | 一句话说明某个命令是干什么的 |
cmd > out.log | 标准输出写入文件 |
cmd >> out.log | 标准输出追加到文件 |
cmd 2> err.log | 只把错误输出写入文件 |
cmd > out.log 2>&1 | 标准输出与错误都写入同一文件 |
cmd &> out.log | 上一条的简写形式 |
cmd 2>/dev/null | 丢弃错误输出,常用于屏蔽无关报错 |
cmd1 | cmd2 | 把 cmd1 的输出作为 cmd2 的输入 |
cmd1 | tee out.log | 既输出到屏幕又写文件,调试长管道时用来看中间结果 |
nohup cmd > out.log 2>&1 & | 后台常驻且输出不丢,断开终端也不停 |
性能观测与调试速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
perf | Linux 官方性能剖析器,基于硬件计数器采样,可看热点函数、调用链、缓存命中率 |
perf stat | 汇总执行期间的计数器总量,如指令数、IPC、缓存命中率、分支预测失败率 |
perf top | 实时显示占用 CPU 最多的函数,类似 top 但精确到符号级别而不是进程级别 |
perf record | 采样并记录到 perf.data,供离线分析;-g 抓调用栈是生成火焰图的前提 |
perf report | 读取 perf.data 生成交互式报告,可逐层展开调用栈定位热点 |
perf list | 列出当前 CPU 支持的所有性能事件,不确定事件名时先查它 |
perf annotate | 把热点反汇编到源码行级,精确到哪条指令耗时最多 |
strace | 跟踪进程的系统调用与信号,可看参数、返回值、耗时,定位卡死/失败原因 |
strace -f | 同时跟踪子进程与线程,多线程/多进程程序必须加,否则会漏掉大部分调用 |
ltrace | 跟踪用户态库函数调用 |
gdb | GNU 调试器,可断点、单步、查看变量与内存、分析 core dump,是定位崩 |
objdump | 反汇编二进制,查看段、符号、重定位信息,验证编译器优化效果常用 |
readelf | 读取 ELF 文件头、程序头、节头、动态段等元信息,判架构/依赖/是否 stri |
nm | 列出目标文件的符号表,查函数/变量是否被导出、是否有未解析符号 |
ldd | 列出可执行文件依赖的共享库及其解析路径,排查"找不到 so" |
ldconfig | 重建共享库缓存 /etc/ld.so.cache,新增或移动 .so 后需要执行 |
addr2line | 把崩溃日志里的地址翻译成"文件:行号",分析内核 oops 或崩溃栈必备 |
c++filt | 还原 C++ 编译后的重整符号 |
pmap | 显示进程的内存映射布局与每段占用,定位内存异常增长、匿名映射泄漏 |
pstack | 打印进程所有线程的调用栈 |
eu-stack | elfutils 提供的栈回溯工具,比 pstack 快很多,对运行中进程影响小 |
iostat | 报告 CPU 与磁盘 I/O 统计,%util 接近 100% 说明设备饱和,a |
sar | 系统活动报告,能回看历史数据 |
pidstat | 按进程/线程统计 CPU、内存、I/O、上下文切换,定位到具体是哪个进程在搞事 |
iotop | 类似 top 的实时 I/O 视图,按进程排序读写速率 |
dstat | 综合 CPU/磁盘/网络/内存/系统的多列实时统计,一屏看全貌 |
slabtop | 实时显示内核 slab 缓存占用,排查内核对象 |
numastat | 显示各 NUMA 节点的内存分配与命中统计,numa_miss 高说明跨节点访问 |
numactl | 控制进程或共享内存的 NUMA 策略,把进程绑到指定节点以消除跨节点访存 |
taskset | 绑定进程到指定 CPU 核心,减少缓存失效与上下文切换抖动 |
turbostat | 读取 CPU 频率、C-state、温度、功耗,排查降频导致的"突然变慢" |
bpftrace | eBPF 的高级追踪语言,一行命令即可统计内核/用户态事件,适合临时探查 |
sysdig | 以系统调用为数据源的系统级排查工具,带丰富的现成脚本 |
systemtap | 老牌内核动态追踪框架,功能强但需编译内核模块,新系统一般优先 eBPF |
ulimit | 设置当前 shell 及其子进程的资源上限 |
prlimit | 查看或修改运行中进程的资源限制,弥补 ulimit 只能改自身的不足 |
systemd-cgtop | 按 cgroup 实时显示资源占用,看容器/服务实际用了多少 |
setsid | 让进程脱离当前终端会话独立运行,比 nohup 更彻底 |
Shell 内建速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
export | 把变量标记为环境变量,使其对子进程可见;不加参数时列出当前所有环境变量 |
env | 在指定环境下执行命令,或列出当前环境变量;常用于临时覆盖变量而不污染当前 She |
set | 设置 Shell 选项与位置参数;不带参数列出所有变量与函数,也用于开启严格模式 |
unset | 删除变量或函数定义,让变量回到未定义状态 |
readonly | 把变量设为只读,之后再赋值会报错,用于保护不应被脚本改写的常量 |
exec | 用指定命令替换当前进程 |
eval | 把参数拼接成字符串再当作命令执行,用于需要二次展开的动态命令,但有注入风险 |
command | 绕过同名函数/别名,只执行真正的外部命令或内建命令,避免递归陷阱 |
builtin | 强制执行 Shell 内建版本,即使存在同名函数也跳过,与 command 类似 |
caller | 在函数中打印调用者的行号与源文件,用于写日志函数或调试库 |
declare | 声明变量并可选设置属性 |
typeset | declare 的别名,功能完全一致,多见于从 ksh 沿袭下来的老脚本 |
local | 在函数内声明局部变量,避免污染全局作用域,写函数时应成为默认习惯 |
shift | 把位置参数整体左移,丢弃 $1,用于逐个处理不定长参数 |
getopts | 解析短选项 |
read | 从标准输入读一行并赋值给变量,常用于交互式输入或逐行处理文件 |
[[ ]] | Bash 增强条件测试,支持正则与通配符,且变量不加引号也不会因空值报错 |
let | 执行算术表达式,变量无需加 $,结果直接赋值;表达式不含空格时可省引号 |
expr | 外部命令,做整数运算与字符串匹配 |
exit | 终止当前 Shell 或脚本并返回退出码,0 表示成功,非 0 表示失败 |
return | 从函数返回 |
trap | 捕获信号或脚本退出事件并执行指定命令,用于清理临时文件、释放资源 |
hash | 记录并显示已执行命令的路径缓存;改动 $PATH 后命令仍找不到旧位置时用它清缓 |
unalias | 删除别名定义,临时恢复命令的原始行为 |
安全加密与审计速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
nftables | 内核新一代包过滤框架,替代 iptables,规则集原子生效、语法更紧凑 |
ufw | Ubuntu 系简化防火墙工具,底层封装 iptables/nftables,几 |
firewalld | RedHat 系动态防火墙管理器,按 zone 划分信任级别,支持不中断连接改规 |
ipset | 管理 IP 地址集合,让防火墙规则能一次匹配成千上万个 IP,性能远高于逐条规则 |
openssl | 加密工具箱: |
openssl req | 生成证书签名请求 |
openssl pkcs12 | 转换 PKCS#12 格式 |
gpg | GNU Privacy Guard,文件签名与加密,验证下载包是否被篡改 |
ssh-agent | 在内存中缓存解密后的私钥,避免每次 SSH 都输密码短语 |
ssh-add | 把私钥交给 ssh-agent 托管,可指定有效期,配合 agent 转发在多跳 |
sshfs | 基于 SFTP 把远程目录挂载成本地文件系统,临时查看/编辑远程文件比反复 sc |
socat | 双向数据转发工具,功能远超 netcat,可做端口转发、Unix socket |
autossh | 自动重连的 SSH 隧道包装器,长驻反向隧道用它比裸 ssh 可靠 |
auditctl | 动态管理 audit 规则,指定监视哪些文件、哪些系统调用、哪些用户行为 |
ausearch | 按关键字、时间、用户检索 audit 日志,出事后定位"谁改了这个文件" |
aureport | 生成 audit 日志的汇总统计报告,快速看全貌而非逐条翻 |
getenforce | 查看 SELinux 当前模式: |
setenforce | 临时切换 Enforcing 与 Permissive |
sestatus | 显示 SELinux 完整状态,含模式、策略类型与配置文件中的设定值 |
semanage | 管理 SELinux 策略的持久配置,如端口标签、文件上下文规则 |
chcon | 临时修改文件的安全上下文,重启或 restorecon 后会丢失,适合临时验证 |
restorecon | 按策略恢复文件的默认安全上下文,是修复"SELinux 拒绝访问"的标准动作 |
faillog | 查看与设置登录失败记录,配合 PAM 锁定策略防范暴力破解 |
ac | 统计用户连接总时长,来自 wtmp 日志,用于合规审计"谁在线多久" |
chage | 设置账户密码有效期,强制定期改密,等保与合规场景常见 |
newgrp | 临时切换到另一个有效组,使新建文件归属该组,多组协作时很有用 |
sg | 以指定组的身份执行单条命令,不改变当前会话 |
runuser | 以另一个用户身份执行命令,比 su 更轻 |
chroot | 改变进程看到的根目录,把进程关在指定目录里,构建隔离环境或修复系统 |
硬件信息与内核模块速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
dmidecode | 读取 DMI/SMBIOS 硬件信息,含型号、序列号、BIOS 版本、内存插槽布 |
lshw | 汇总全部硬件配置的树状报告,覆盖面最广,一条命令出完整清单 |
hwinfo | 另一套硬件探测工具 |
inxi | 一行命令输出可读的硬件摘要,社区求助时贴配置最方便 |
neofetch | 美化输出的系统与硬件概览,常用于截图展示环境信息 |
lspci | 列出 PCI/PCIe 总线上的所有设备 |
lsusb | 列出 USB 总线设备,查外接设备是否被识别、识别成什么 |
edid-decode | 解析显示器 EDID 数据,排查分辨率/刷新率异常 |
blkdiscard | 对块设备下发 TRIM/DISCARD,通知 SSD 哪些块可回收,用于 SSD |
lsmod | 列出当前已加载的内核模块及其依赖关系与引用计数 |
modinfo | 显示模块文件的详细信息: |
modprobe | 智能加载/卸载模块 |
insmod | 加载指定模块文件,不处理依赖,一般只在调试自编译模块时用 |
rmmod | 卸载模块,不处理依赖;模块被占用 |
depmod | 生成模块依赖关系文件 modules.dep,安装新模块后需要执行 |
cpupower | 查看与设置 CPU 调频策略,是控制 P-state 的官方工具 |
powertop | 分析系统功耗与唤醒源,笔记本续航调优与服务器省电都用它 |
tuned-adm | 切换系统调优配置档 |
irqbalance | 自动把硬件中断均衡分配到多个 CPU 核心,多核机器默认应开启 |
lsdev | 汇总列出系统设备占用的中断号、DMA 通道与 I/O 端口 |
sensors | 读取温度、电压、风扇转速传感器,排查过热降频 |
hwclock | 读取与设置硬件时钟 |
hdparm | 查看与设置 SATA/IDE 磁盘参数,测缓存与磁盘读取速度 |
sdparm | 访问 SCSI 设备 |
容器与云原生速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
docker | 容器引擎主命令,构建镜像、运行容器、管理网络与数据卷 |
docker exec | 进入运行中的容器执行命令,日常调试的入口 |
docker logs | 查看容器标准输出与错误,容器内进程日志打到前台时就是应用日志 |
docker inspect | 输出容器/镜像的完整配置 JSON,查 IP、挂载、环境变量等一切的真相来源 |
docker stats | 实时显示容器 CPU/内存/网络/磁盘占用,比进容器里 top 直观 |
docker system | 查看与清理磁盘占用,长期跑 Docker 的机器迟早要清一次 |
docker history | 逐层显示镜像的构建历史与各层大小,定位"镜像为什么这么大" |
docker-compose | 用 YAML 描述多容器应用 |
lazydocker | 终端里的 Docker 图形化管理界面,不记命令也能操作容器/镜像/日志 |
kubectl | Kubernetes 集群管理主命令,操作 Pod、Deployment、Ser |
kubectl logs | 查看 Pod 内容器日志,容器已崩溃时用 --previous 看上一次的 |
kubectl exec | 进入 Pod 内容器,排查运行时问题 |
kubectl apply | 按 YAML 声明式地创建或更新资源,是 GitOps 的基础操作 |
kubectl port-forward | 把集群内服务端口转发到本地,不暴露 Service 也能调试 |
helm | Kubernetes 的包管理器,用 chart 模板化部署复杂应用 |
k9s | 终端里的 Kubernetes 可视化管理界面,实时看资源、进容器、看日志 |
podman | 无守护进程的 Docker 替代品,命令几乎完全兼容,且默认以普通用户运行 |
crictl | 直接调试 CRI 运行时 |
nerdctl | containerd 的 Docker 风格命令行,在只有 containerd |
buildah | 构建 OCI 镜像的工具,不需要守护进程,也支持不用 Dockerfile 的方 |
skaffold | 自动化开发循环: |
kustomize | Kubernetes 原生配置管理,用 overlay 复用基础配置做多环境差异 |
kind | 用 Docker 容器模拟 Kubernetes 节点,本地起集群最快的方式,常 |
minikube | 本地单节点 Kubernetes,带 Dashboard 与插件生态,学习环境首 |
ansible | 无 Agent 的自动化运维工具,通过 SSH 批量执行任务,配置管理与部署都用 |
ansible-playbook | 执行 YAML 编排的自动化剧本,把一批操作固化成可重复执行的流程 |
terraform | 基础设施即代码 |
vagrant | 管理本地虚拟机环境,一条命令起一台可复现的开发用 VM |
现代命令行工具速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
rg | ripgrep,递归正则搜索,默认遵守 .gitignore、跳过二进制文件,现 |
ag | the silver searcher,rg 之前的同类工具,速度略慢但兼容性更 |
fd | find 的替代品,语法简洁、默认忽略隐藏与 gitignore 文件、支持并行 |
jq | JSON 处理器,切片、过滤、映射、重排,几乎能完成任何 JSON 变换 |
yq | YAML/TOML/XML 处理器,语法与 jq 高度一致,改 Kubernet |
gron | 把 JSON 转成可 grep 的扁平赋值语句,配合 grep 反查路径 |
dasel | 统一查询/修改 JSON、YAML、TOML、XML、CSV 的工具,语法跨格式 |
bat | cat 的替代品,带语法高亮、行号、Git 修改标记,自动分页 |
eza | ls 的现代替代品 |
duf | df 的替代品,彩色的磁盘使用概览,按设备类型分组更易读 |
ncdu | 交互式磁盘占用分析器,可逐层下钻、直接删除,排查"磁盘满了"首选 |
dust | du 的 Rust 替代品,默认按占用排序并画条形图,一眼看出谁最大 |
btop | 现代化资源监控面板,图形化显示 CPU/内存/磁盘/网络/进程,鼠标可交互 |
glances | 跨平台系统监控,信息密度极高,还支持 Web 模式远程查看 |
nmon | IBM 出品的经典性能监控,分屏显示各子系统,适合采集后离线分析 |
procs | ps 的替代品,彩色输出、默认显示完整命令行、支持树状与关键字过滤 |
fzf | 通用模糊查找器,可接任意输入源,绑定 Ctrl-R/Alt-C 后极大提升效率 |
zoxide | 会学习的 cd,记住你常去的目录,之后 z 片段 直接跳过去 |
direnv | 进入目录时自动加载 .envrc 环境变量,离开时自动卸载,项目隔离利器 |
sd | 直观的查找替换工具,用正则字面量语法 |
hyperfine | 命令行基准测试工具,多次运行取统计值并自动检测预热,测命令耗时比 time 严谨 |
tokei | 统计代码行数与语言构成,比 cloc 快很多 |
xh | curl 的人性化替代品,语法简洁、自动高亮、JSON 默认格式化 |
dog | dig 的现代替代品,彩色输出、默认简洁、支持 DoH/DoT |
tldr | 社区维护的精简命令手册,直接给常用例子,不用在 man 里翻长篇 |
cheat | 个人备忘单工具,可自建 cheat sheet |
watchexec | 监听文件变化并自动执行命令,替代手工重跑 |
entr | 轻量的文件监听执行工具,从管道接文件列表 |
文件系统与 LVM 速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
pvcreate | 把磁盘/分区初始化为物理卷,打上 LVM 元数据标签 |
pvscan | 扫描系统里所有 PV,新接磁盘后用它确认是否被识别 |
pvremove | 擦除 PV 上的 LVM 元数据,让磁盘退回普通状态 |
vgcreate | 创建卷组,把若干 PV 聚合成一个存储池 |
vgextend | 往卷组里加新的物理卷,这是"池子扩容"的动作 |
vgreduce | 从卷组里移除物理卷,通常先要 pvmove 迁走数据 |
pvmove | 把某块 PV 上的数据在线迁移到其他 PV,换盘/下线坏盘时用 |
lvcreate | 从卷组里划出逻辑卷,可按大小或按剩余百分比分配 |
lvextend | 扩展逻辑卷容量,在线可用,扩完还要扩文件系统 |
lvreduce | 缩小逻辑卷,有数据丢失风险,必须先缩文件系统 |
lvremove | 删除逻辑卷,卷上的数据一并消失 |
lvrename | 重命名逻辑卷 |
lvm | LVM 的交互式 shell,不确定命令名时可进去用 Tab 补全 |
dumpe2fs | 导出 ext 文件系统的超级块与块组信息,查 inode 总数/已用、块大小、挂 |
e2label | 设置或查看 ext 文件系统的卷标,挂载时可用 LABEL= 引用 |
resize2fs | 调整 ext 文件系统大小,lvextend 之后必须跑它,文件系统才会认新空间 |
e2fsck | 检查并修复 ext 文件系统,必须卸载后执行,否则可能损坏数据 |
tune2fs | 调整 ext 文件系统参数: |
xfs_info | 显示 XFS 文件系统信息: |
xfs_growfs | 扩展 XFS 文件系统,配合 lvextend 使用,同样要传挂载点 |
xfs_repair | 修复 XFS 文件系统,需卸载;严重损坏时可先 -L 清日志 |
xfs_fsr | XFS 碎片整理工具 |
btrfs | btrfs 的主命令,子卷管理、快照、压缩、配额、平衡等全部通过它的子命令完成 |
btrfs scrub | 校验并修复数据校验和错误,定期跑能提前发现静默损坏 |
btrfs balance | 重新平衡数据在设备间的分布,加盘或空间分配不均后需要 |
btrfs filesystem | 文件系统级操作: |
quota | 查看当前用户/组的配额使用情况 |
edquota | 编辑配额限制,会打开编辑器让你改软限制、硬限制与宽限期 |
setquota | 命令行直接设置配额,适合脚本批量操作 |
quotacheck | 扫描文件系统建立配额数据库,启用配额前必须先跑一次 |
repquota | 汇总报告所有用户/组的配额使用情况 |
wipefs | 擦除磁盘上的文件系统/分区表签名,让磁盘回到"空白"状态,避免旧元数据干扰 |
fallocate | 快速预分配文件空间,不实际写数据因此瞬间完成,测磁盘性能或预留空间用 |
truncate | 把文件截断或扩展到指定大小,扩展部分形成空洞 |
sgdisk | GPT 分区表的命令行管理工具,适合脚本化分区 |
sfdisk | 另一个脚本化分区工具,支持从文件读入分区布局批量应用 |
网络进阶与压测速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
iperf3 | 网络带宽测试工具,测 TCP/UDP 最大吞吐、丢包、抖动,量化链路能力 |
wrk | 现代 HTTP 压测工具,多线程 + epoll,并发能力强,支持 Lua 脚本 |
ab | Apache 自带的简易压测工具,一条命令看 QPS,快速验证够用 |
siege | 支持按 URL 列表模拟真实访问序列的压测工具 |
httpie | 人性化的 HTTP 客户端,语法比 curl 直观,默认格式化 JSON 并高亮 |
mitmproxy | 交互式 HTTPS 中间人代理,可实时查看和篡改请求,调试 API 与移动端抓包 |
iftop | 按连接实时显示带宽占用,类似 top 的网络版 |
nethogs | 按进程统计带宽占用,直接告诉你哪个程序在传数据 |
tcpflow | 按 TCP 连接重组数据流,把每个连接的内容存成文件,看明文协议很直观 |
ngrep | 网络版的 grep,在包负载里做正则匹配,找特定关键字很方便 |
tshark | Wireshark 命令行版,按协议字段过滤与解析,输出可读的连接详情 |
ssldump | 解析 SSL/TLS 握手过程,排查证书、协议版本、加密套件协商失败 |
fping | 批量 ping 多台主机,速度快、可按存活汇总,扫网段用 |
arping | 发 ARP 请求探测二层主机,可检测 IP 冲突 |
hping3 | 可定制 TCP/IP 报文的发包工具,能做端口扫描、防火墙测试、SYN floo |
whois | 查询域名或 IP 的注册信息,确认归属、注册商、 Abuse 联系人 |
dnstracer | 追踪 DNS 解析的逐级查询路径,定位解析在哪一级超时或被劫持 |
dnsperf | DNS 服务器性能测试,测权威/递归服务器的查询吞吐与延迟 |
tc | 流量控制: |
conntrack | 查看和管理内核的连接跟踪表,NAT 与防火墙都依赖它,表满会导致新连接被丢弃 |
bridge | 管理以太网网桥 |
brctl | 传统的网桥管理命令,新系统推荐用 bridge |
nmcli | NetworkManager 的命令行工具,管理连接、IP、DNS、Wi-Fi, |
resolvectl | systemd-resolved 的管理命令,查/改 DNS 配置与缓存 |
aria2c | 多连接下载工具,支持 HTTP/FTP/BT/磁力,断点续传,比 wget 快很 |
rclone | 云存储同步工具,支持 S3、OSS、Google Drive 等几十种后端,备份 |
sshuttle | 基于 SSH 的透明代理,不需要在远端装任何东西就能把流量走隧道 |
终端复用与编辑器速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
tmux | 终端复用器,会话持久、窗口分屏,断线不丢工作现场 |
screen | 老牌终端复用器,功能类似 tmux 但配置更繁琐,老系统上的默认选择 |
byobu | tmux/screen 的增强封装,底部带状态栏和快捷键提示,开箱即用 |
vimdiff | 并排对比多个文件的差异并编辑,合并冲突的好工具 |
view | 以只读模式打开 vim,避免手滑改坏文件 |
nano | 简单易用的终端编辑器,底部直接显示快捷键,改配置文件最快的选择 |
emacs | 扩展性极强的编辑器 |
ed | 行编辑器,Unix 最古老的编辑器,无交互界面,只适合脚本里用 |
script | 录制整个终端会话 |
expect | 自动化交互式程序,按预期输出发送应答,用来自动填密码、自动应答安装向导 |
reptyr | 把已在运行的进程接管到当前终端,拯救"忘了开 tmux 就跑了长任务" |
dtach | 极简的会话分离工具,只做 detach/attach 一件事,比 tmux 轻 |
disown | 从当前 shell 的作业表中移除任务,使其不受 shell 退出时的 SIGH |
more | 最简单的分页器,空格翻页、回车下一行,老系统兼容性最好 |
most | 增强分页器,支持左右滚动和多个文件切换 |
tput | 查询与设置终端能力 |
stty | 查看和修改终端行设置,处理"终端显示乱了"或密码不回显 |
w3m | 支持表格与色彩的终端浏览器,也能直接把网页渲染成纯文本 |
lynx | 老牌纯文本浏览器,可访问性浏览与快速查看网页内容 |
日志、时间与计划任务速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
logrotate | 日志轮转工具,按配置切割、压缩、删除旧日志,通常由 cron 每日自动调用 |
logger | 从命令行向 syslog 写一条消息,脚本里打点、测试日志链路是否通畅 |
systemd-cat | 把命令的输出直接送进 systemd journal,让普通脚本的输出也能被 j |
rsyslogd | 传统的 syslog 守护进程,负责接收、过滤、转发日志 |
systemd-journal-remote | 接收远端主机发来的 journal 日志,用于集中式日志收集 |
lnav | 高级日志文件查看器,自动识别格式、按时间轴合并多个日志、支持 SQL 查询 |
multitail | 同时监控多个日志文件并分屏显示,支持颜色高亮与过滤 |
ccze | 给日志上色,让不同级别、IP、状态码一眼可辨 |
grc | 通用的命令输出着色器,给任意命令的输出按规则上色 |
logwatch | 日志摘要分析工具,通常由 cron 每日运行并邮件发送报告 |
chronyd | chrony 的时间同步守护进程,负责持续校准系统时钟 |
chronyc | chrony 的命令行管理端,查看同步状态与手动校准 |
ntpq | 传统 ntpd 的查询工具,看与上游服务器的关系和偏差 |
ntpdate | 一次性从 NTP 服务器同步时间 |
tzselect | 交互式选择时区,会告诉你应该设哪个 TZ 值 |
zdump | 显示指定时区的当前时间与夏令时规则,验证时区配置是否正确 |
timedatectl | systemd 的时间管理命令,查看/设置系统时间与时区 |
anacron | 执行"因关机而错过"的周期性任务,适合笔记本/非 7×24 开机的机器 |
batch | 在系统负载较低时才执行的一次性任务,避免拖慢生产 |
systemd-run | 用 systemd 临时跑一个任务单元,可设超时、资源限制、定时触发 |
run-parts | 按顺序执行指定目录下的所有可执行脚本,cron 的 cron.daily 等目录 |
开发构建与二进制速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
gcc | C 编译器,也可驱动整个编译链接流程直接产出可执行文件 |
g++ | C++ 编译器,会自动链接 C++ 标准库 |
make | 经典构建工具,按 Makefile 里的规则做增量构建 |
cmake | 跨平台构建系统生成器,生成 Makefile 或 Ninja 文件,现代 C/C |
ninja | 追求极致速度的构建系统,通常不手写配置而由 cmake/meson 生成 |
meson | 现代化的构建系统,配置语法比 cmake 简洁,编译速度快 |
ar | 创建和操作静态库 |
ranlib | 为静态库生成符号索引,加速链接器查找 |
pkg-config | 查询已安装库的编译与链接参数,避免手工写一堆 -I/-l |
ldconfig | 更新动态链接器的缓存与软链接,装了新 .so 后必须执行 |
strip | 剥掉二进制里的符号表与调试信息,可显著减小体积 |
size | 显示各段 |
ld | GNU 链接器,把 .o 与库拼成可执行文件 |
as | GNU 汇编器,把汇编代码编译成目标文件 |
patch | 应用补丁文件 |
valgrind | 内存调试与性能分析工具集,最常用的是 memcheck |
gdbserver | 在目标机上运行、由另一台机器的 gdb 远程连接,调试嵌入式或受限环境 |
autoconf | 生成 configure 脚本,自动探测系统环境与依赖 |
automake | 配合 autoconf 生成符合规范的 Makefile.in |
libtool | 屏蔽不同平台构建动态库的差异,让同一份代码能生成各平台的库 |
ccache | 编译结果缓存,重复编译时直接命中,对"改一个头文件触发全量重编"效果显著 |
distcc | 分布式编译,把编译任务分发到局域网其他机器,大幅缩短大项目构建时间 |
结构化数据速查(速查文档)
| 命令 | 一句话作用 |
|---|---|
jq | JSON 处理 DSL,用过滤器管道做切片、过滤、映射、聚合 |
yq | YAML/TOML/XML 处理器,语法与 jq 高度一致,改 Kubernet |
dasel | 统一查询/修改 JSON、YAML、TOML、XML、CSV,语法跨格式一致,脚 |
gron | 把 JSON 展平成可 grep 的赋值语句,用来反查"某个值在 JSON 里的 |
jless | JSON/CSV 的交互式分页查看器,支持折叠展开、搜索、跳转列,类似 vim |
fx | 交互式 JSON 查看器,支持用 JS 表达式实时查询过滤 |
visidata | 终端里的电子表格,能打开 CSV/JSON/Excel/SQLite,支持列操作 |
csvlook | 把 CSV 渲染成对齐的表格,人眼可读地预览 |
csvcut | 按名称或序号取列,等价于 cut 但理解 CSV 引号与表头 |
csvstat | 输出每列的统计摘要: |
csvgrep | 按条件过滤行,支持正则匹配 |
csvsql | 对 CSV 直接跑 SQL,或生成建表语句 |
in2csv | 把 Excel、JSON、DBF 等格式转成 CSV,处理别人发来的表格文件很方 |
xsv | Rust 写的极速 CSV 工具,索引、切片、连接、统计,处理大文件比 csvk |
mlr | Miller,CSV/JSON 的行列处理工具,语法类似 awk 但理解表头和字 |
q | 直接对 CSV/TSV 文件执行 SQL 语句,不用先导入数据库 |
sqlite3 | 内嵌数据库,可把 CSV 导入后用完整 SQL 查询,适合多表关联等复杂分析 |
csvsql | csvkit 组件的 SQL 接口,可直接查询也可生成建表语句 |
xmllint | XML 解析与校验工具,可做格式美化、XPath 查询、Schema 校验 |
一句话总结
这份清单 = 20 大命令族 × 580+ 命令的「总索引」,每个命令都挂到对应速查文档,并作为「一个命令一个文档」拆分工作的出发点;想查用法去对应族文档,想拆单篇从这里取列表。