Linux 命令速查

Linux 命令速查表收录文件与目录操作、文本查看与处理、查找与统计、进程与服务管理、网络连接排查、磁盘与性能监控、压缩归档、用户与权限等高频 Shell 命令及中文说明,支持关键字过滤,点击命令即可复制,适合日常运维与开发排查时快速查阅,免费在线使用,无需安装。

Linux 常用命令速查,输入关键字过滤(如 grep / 端口 / 磁盘);点击左侧命令即可复制。

文件与目录

ls -lh列出文件并显示可读大小
ls -a包含隐藏文件
ls -lt按修改时间倒序
tree -L 2两层目录树
pwd显示当前目录
cd -返回上一个目录
mkdir -p a/b/c递归创建多级目录
cp -a src dst复制并保留属性与软链
mv -i a b覆盖前先询问
rm -rf dir递归强删(慎用,无回收站)
ln -s target link创建软链接
readlink -f 文件解析软链的真实路径
stat 文件查看大小、权限与时间戳
file 名字识别文件真实类型
touch 文件新建空文件或更新时间

查看与处理文本

cat -n 文件带行号输出全文
less +G 文件分页查看,G 跳到末尾
tail -f app.log实时跟踪日志追加
tail -n 200 文件看最后 200 行
head -c 512 文件看前 512 字节
grep -rn "关键字" .递归搜索并显示行号
grep -i -c "err" 文件忽略大小写并统计条数
grep -A 3 -B 3 "key" 文件显示命中行前后各 3 行
sed -n '10,20p' 文件只输出第 10 到 20 行
sed -i 's/old/new/g' 文件原地批量替换
awk -F: '{print $1}' /etc/passwd按分隔符取列
sort -u 文件排序并去重
uniq -c | sort -nr统计重复次数并按次数排序
cut -d, -f2 文件取逗号分隔的第 2 列
tr -d '\r'去掉 Windows 换行符
wc -l 文件统计行数
diff -u a b并排比较两个文件
paste -sd, 文件把多行合并成一行
xargs -0 -n1配合 find -print0 安全传参

查找与磁盘占用

find . -name "*.log"按名字模式查找
find . -type f -mtime -77 天内修改过的文件
find / -size +100M找出大于 100MB 的文件
find . -name "*.tmp" -delete查找并直接删除
find . -type d -empty -delete清理空目录
du -sh *当前目录各项占用汇总
du -ah . | sort -nr | head -20最大的 20 个文件与目录
df -h各挂载点使用率
df -iinode 使用率(空间够却写不进时先看它)
locate 关键字走索引快速找路径
which nginx查命令所在路径

进程与服务

ps aux --sort=-%mem | head按内存占用看进程
pgrep -af java按名字找进程并带完整命令
top -c实时看进程,显示完整命令行
htop更友好的交互式进程视图
kill -15 _pid_请求进程正常退出
kill -9 进程号强制终止,进程来不及清理
killall -9 名字按名字批量强杀
nohup cmd & 2> /dev/null后台运行并脱离终端
jobs -l / fg 1 / bg 1查看与恢复后台任务
systemctl status nginx查看服务状态
systemctl restart nginx重启服务
systemctl enable --now nginx开机自启并立即启动
journalctl -u nginx -f跟踪某服务日志
journalctl --since "10 min ago"按时间范围查系统日志
cron -l列出当前用户的定时任务

网络与连接

ss -tlnp列出监听端口及所属进程
ss -anp | grep 8080查看某端口的全部连接
netstat -antp老式等价命令,容器里常缺
ip a / ip r看地址与路由表
ping -c 4 主机发 4 个包测连通
mtr -rwzbc 20 主机融合 traceroute 与 ping 的丢包报告
traceroute -n 主机看逐跳路径,-n 不反解域名
dig +short 域名查解析结果
nslookup 域名备用 DNS 查询
curl -sv https://地址 2>&1 | head -40看握手与响应头
curl -o /dev/null -s -w '%{http_code} %{time_total}\n' 地址只取状态码与耗时
wget -c 地址断点续传下载
nc -zv 主机 端口测端口是否可达
tcpdump -i any -nn port 443抓包排查,-nn 不解析名字
ssh -N -L 8888:127.0.0.1:80 主机本地端口转发到远端服务
scp -r 目录 主机:路径跨机复制
rsync -avz --delete src/ dst/增量同步,多用于发布与备份
iptables -L -n --line-numbers查看防火墙规则
firewall-cmd --add-port=8080/tcp --permanent放行端口并持久化

系统、性能与硬件

uptime负载与运行时长
free -h内存与 swap 使用
vmstat 1 5每秒采样,看 CPU 排队与换页
iostat -xz 1磁盘 IO 与等待时间
sar -u 1 5按秒统计 CPU 各态占比
lsof -p 进程号列出该进程打开的文件与套接字
lsof -i :8080谁占用了这个端口
strace -p 进程号 -f -e trace=network跟踪系统调用,定位卡住的原因
nprocCPU 逻辑核数
lscpu / lsblk看 CPU 与块设备
lspci | grep -i nic查网卡设备
dmidecode -t memory看内存硬件信息(需 root)
cat /etc/os-release系统发行版信息
hostnamectl status主机名与时区概览
timedatectl set-timezone Asia/Shanghai设置时区
date -d @1700000000时间戳转本地时间
date +%Y-%m-%d-%H%M%S生成文件名用的时间串

压缩与归档

tar -czf 包名.tar.gz 目录打包并 gzip 压缩
tar -xzf 包名.tar.gz -C 目标目录解压到指定目录
tar -tzf 包名.tar.gz | head只列内容不解压
tar -cJf 包名.tar.xz 目录xz 压缩,体积更小但更慢
zip -r 包名.zip 目录打包为 zip
unzip -o 包名.zip -d 目标覆盖解压
gzip -9 文件 / gunzip 文件.gz单文件压缩与还原
zgrep -n "err" app.log.gz直接在压缩日志里搜索
xz -k -9 文件压缩并保留原文件

用户、权限与 Shell

chmod 644 文件 rw-r--r--
chmod +x 脚本加执行位
chmod -R 755 目录递归改权限
chown -R 用户:组 目录递归改属主
umask 022设置新建文件默认屏蔽位
id / whoami当前用户与组
useradd -m -s /bin/bash 名字建用户与家目录
passwd 名字改密码
su - 用户切换用户并加载其环境
sudo -i拿到 root 的登录 shell
visudo校验语法后再写 sudoers
set -euo pipefail脚本开头用,出错即停
bash -n 脚本只检查语法不执行
export PS1='\u@\h \w \$'自定义提示符
alias ll='ls -lh'写进 ~/.bashrc 常驻
history | tail -20回看最近命令
Ctrl+R反向搜索历史
tmux new -A -s work断线后可恢复的会话