Linux 命令速查表

基于实际使用经验整理 — 持续更新

📁 文件与目录

命令说明
ls -la列出所有文件(含隐藏文件)+ 详细信息
cd /path切换目录
pwd显示当前目录路径
mkdir -p a/b/c递归创建目录
cp -r src dest递归复制目录
mv old new移动/重命名文件
rm -rf dir强制删除目录(慎用!)
find . -name "*.log"查找 .log 文件
du -sh *显示每个文件/目录大小
df -h查看磁盘使用情况
cat file查看文件内容
tail -f file实时追踪文件末尾(看日志用)
head -20 file查看文件前20行
chmod +x script.sh给脚本添加执行权限
chown user:group file修改文件所属用户/组

⚙️ 进程管理

命令说明
ps aux查看所有进程
ps aux | grep nginx查找 nginx 相关进程
top实时进程监控(按 q 退出)
htoptop 的增强版(彩色界面)
kill -9 PID强制结束进程
killall nginx按名称结束进程
bg / fg后台/前台切换任务
nohup cmd &后台运行,关终端不中断
jobs查看后台任务

🌐 网络

命令说明
ip addr查看网络接口和IP
ss -tlnp查看所有监听端口
ss -t state established查看已建立的 TCP 连接
netstat -tlnp查看监听端口(传统命令)
curl -I https://baidu.com查看 HTTP 响应头
curl -X POST url -d '{}'发送 POST 请求
ping -c 4 8.8.8.8ping 4次测试连通性
traceroute 8.8.8.8路由追踪
iptables -L -n查看防火墙规则

🔧 系统服务 (systemd)

命令说明
systemctl status nginx查看服务状态
systemctl start/stop nginx启动/停止服务
systemctl restart nginx重启服务
systemctl enable nginx设置开机自启
systemctl disable nginx取消开机自启
systemctl daemon-reload重载服务配置(改 .service 后执行)
journalctl -u nginx -f实时查看服务日志
journalctl -u nginx --since today查看今天的服务日志

📦 包管理(apt / Ubuntu)

命令说明
apt update更新软件源索引
apt upgrade -y升级所有可升级的包
apt install pkg安装软件包
apt remove pkg卸载软件包
apt purge pkg彻底卸载(含配置文件)
apt search keyword搜索软件包
apt list --installed列出已安装的包
dpkg -l | grep nginx查看已装包的详细信息

🔐 权限与用户

命令说明
sudo cmd以 root 身份执行命令
whoami查看当前用户
id查看当前用户 UID/GID
useradd -m username创建用户(含 home 目录)
passwd username设置/修改用户密码
usermod -aG group user将用户加入组(如 docker 组)
su - username切换用户
chmod 755 file设置权限 rwxr-xr-x
chmod 600 private.key仅 owner 可读写

📝 文本处理

命令说明
grep "error" file搜索包含 error 的行
grep -r "TODO" .递归搜索当前目录
grep -v "debug" file排除包含 debug 的行
awk '{print $1}' file打印第1列
sed 's/old/new/g' file替换文本
wc -l file统计行数
sort | uniq -c | sort -rn排序去重统计(经典组合)
tee file同时输出到屏幕和文件
💡 提示:这份速查表只收录了我在服务器运维中实际用过的命令。 不会用的命令不写——宁缺毋滥,确保每一条都能在终端里敲出来。