linux-sre-handbook

03-常用命令速查

系统信息

uname -a            # 内核信息
hostnamectl         # 主机名详情
uptime              # 运行时间、负载
who / w             # 登录用户

文件和目录

ls -lha             # 详细信息(含隐藏、人类可读)
ls -ltr             # 按时间排序
tree -L 2           # 目录树
du -sh *            # 每个子目录/文件大小
du -h --max-depth=1 # 一级子目录大小
find . -name "*.log" -mtime -7  # 最近 7 天修改的日志
find . -size +100M               # 大于 100M 的文件
locate <filename>                # 快速搜索(需 updatedb)

文本处理

sort -n             # 数值排序
sort -rn            # 逆序
sort -u             # 去重
uniq -c             # 计数去重
wc -l               # 行数
wc -c               # 字节数
head -n 20          # 前 20 行
tail -f file        # 实时跟踪
cut -d: -f1,3       # 按分隔符切分
paste file1 file2   # 并列合并
tr -d '\r'          # 删除字符
tr '[:upper:]' '[:lower:]'  # 大小写转换

进程与性能

ps aux              # 全部进程
ps -ef              # 完整格式
pgrep -f "nginx"    # 按名称查 PID
kill -9 <PID>       # 强制终止
kill -15 <PID>      # 优雅终止
pkill -f "pattern"  # 按匹配杀进程
nice -n 10 cmd      # 降低优先级
renice -n -5 <PID>  # 调整运行中进程优先级

网络

ss -tlnp            # 监听端口
ss -s               # 连接汇总
ip addr             # 网络接口
ip route            # 路由表
curl -I <url>       # HTTP 头
curl -o /dev/null -s -w "%{time_total}\n" <url>  # 请求耗时
wget -c <url>       # 断点续传

日志相关

journalctl -u nginx -f             # 跟踪服务日志
journalctl --since "1 hour ago"    # 时间范围
journalctl -p err                  # 只显示错误级别
tail -n 100 /var/log/syslog        # 查看系统日志
dmesg | tail -20                   # 内核消息

压缩与归档

tar -czvf archive.tar.gz dir/      # 创建
tar -xzvf archive.tar.gz           # 解压
gzip file                          # 压缩
gunzip file.gz                     # 解压
zip -r archive.zip dir/            # zip 格式

磁盘与 IO

df -h              # 分区使用情况
du -sh dir/        # 目录大小
iotop              # IO 实时监控
iostat -x 1        # IO 统计
lsblk              # 块设备列表
blkid              # 设备 UUID

持续延伸