Linux 命令速查表

预计阅读时间:6 分钟

汇总 Linux 日常运维中最常用的命令,按类别整理,每个命令附带用途说明和典型示例。共 14 类 135 条命令。

📖 目录

文件操作

命令用途示例
ls 列出目录内容 ls -lah /home
cd 切换当前目录 cd /var/log
pwd 显示当前路径 pwd
cp 复制文件或目录 cp -r src/ dest/
mv 移动或重命名 mv file.txt newname.txt
rm 删除文件或目录 rm -rf /tmp/old/
mkdir 创建目录 mkdir -p a/b/c
touch 创建空文件或更新时间戳 touch newfile.txt
ln 创建硬链接或软链接 ln -s /real/path link
tree 显示目录树(需安装) tree -L 2 /home

📖 深入学习:基本文件操作命令

文件查看与编辑

命令用途示例
cat 查看整个文件内容 cat /etc/os-release
less 分页查看(上下翻页) less /var/log/syslog
head 查看文件开头 N 行 head -20 file.txt
tail 查看文件末尾 N 行 tail -f /var/log/nginx/access.log
nl 带行号显示文件 nl file.txt
wc 统计行/词/字符数 wc -l file.txt
diff 比较两个文件差异 diff file1 file2
vim 终端文本编辑器 vim /etc/nginx/nginx.conf
nano 简易终端编辑器 nano ~/.bashrc

📖 深入学习:文件查看与文本编辑

文件权限与所有权

命令用途示例
chmod 修改文件权限 chmod 755 script.sh
chown 修改文件所有者 chown user:group file
chgrp 修改文件所属组 chgrp www-data /var/www
umask 设置默认权限掩码 umask 022
lsattr 查看文件扩展属性 lsattr file
chattr 修改文件扩展属性 chattr +i file(不可变)
getfacl 查看 ACL 权限 getfacl file
setfacl 设置 ACL 权限 setfacl -m u:user:rwx file

📖 深入学习:用户与权限管理

进程管理

命令用途示例
ps 查看进程快照 ps aux --sort=-%mem
top 实时进程监控 top -o %MEM
htop 增强版交互式监控 htop
kill 终止进程(按 PID) kill -15 1234
killall 按名称终止进程 killall nginx
pkill 按名称/条件终止进程 pkill -f "python server.py"
nice 设置启动优先级 nice -n 10 ./slow-task
renice 调整运行中进程优先级 renice -n -5 -p 1234
nohup 终端关闭后继续运行 nohup ./server &
bg/fg 后台/前台切换 Ctrl+Z 暂停,bg 后台运行

📖 深入学习:配置文件与系统设置

系统信息

命令用途示例
uname 显示内核信息 uname -a
lsb_release 显示发行版信息 lsb_release -a
lscpu 显示 CPU 详细信息 lscpu
lsmem 显示内存布局 lsmem --summary
free 显示内存使用情况 free -h
df 显示磁盘分区使用率 df -hT
du 统计文件/目录大小 du -sh * | sort -hr
dmidecode 查看硬件信息(需 root) sudo dmidecode -t memory
uptime 系统运行时间与负载 uptime
dmesg 查看内核环缓冲区日志 dmesg | tail -20

网络管理

命令用途示例
ip 网络配置管理(现代) ip addr show
ifconfig 网络接口配置(传统) ifconfig eth0
ss 查看套接字统计(现代) ss -tlnp
netstat 网络统计(传统) netstat -tulpn
ping 测试网络连通性 ping -c 4 8.8.8.8
traceroute 追踪路由路径 traceroute google.com
mtr 路由追踪 + 实时统计 mtr google.com
dig DNS 查询工具 dig +short example.com
nslookup DNS 查询(传统) nslookup google.com
curl HTTP/FTP 传输工具 curl -I https://example.com
wget 文件下载工具 wget -c https://example.com/file.zip
scp SSH 远程文件复制 scp file user@host:/path/
rsync 增量同步工具 rsync -avz src/ user@host:/dest/
telnet 测试 TCP 端口连通性 telnet host 80
nc 全能网络工具 nc -zv host 22

📖 深入学习:系统信息与性能查看

磁盘与存储

命令用途示例
fdisk 磁盘分区工具 sudo fdisk /dev/sda
parted GPT 磁盘分区 sudo parted /dev/sda
mkfs 创建文件系统 sudo mkfs.ext4 /dev/sda1
mount 挂载文件系统 mount /dev/sda1 /mnt
umount 卸载文件系统 umount /mnt
lsblk 列出块设备 lsblk -f
blkid 查看块设备 UUID blkid /dev/sda1
smartctl 磁盘 S.M.A.R.T 检测 sudo smartctl -a /dev/sda
iostat 磁盘 I/O 统计 iostat -x 1
fsck 检查修复文件系统 sudo fsck /dev/sda1

📖 深入学习:时间管理与日志

包管理

命令用途示例
apt update 刷新包索引(Debian/Ubuntu) sudo apt update
apt upgrade 升级所有软件包 sudo apt upgrade -y
apt install 安装软件包 sudo apt install nginx
apt remove 卸载软件包 sudo apt remove nginx
apt autoremove 清理无用依赖 sudo apt autoremove
apt search 搜索软件包 apt search keyword
apt show 查看包详细信息 apt show nginx
dpkg -i 安装本地 .deb 包 sudo dpkg -i package.deb
dpkg -l 列出已安装包 dpkg -l | grep nginx
snap install 安装 Snap 包 sudo snap install lxd
snap list 列出已安装 Snap snap list

📖 深入学习:软件包管理

压缩与归档

命令用途示例
tar -czf 创建 gzip 压缩归档 tar -czf archive.tar.gz dir/
tar -xzf 解压 gzip 归档 tar -xzf archive.tar.gz
tar -cjf 创建 bzip2 压缩 tar -cjf archive.tar.bz2 dir/
gzip 压缩单个文件 gzip file.txt
gunzip 解压 .gz 文件 gunzip file.txt.gz
zip 创建 ZIP 压缩 zip -r archive.zip dir/
unzip 解压 ZIP 文件 unzip archive.zip
xz 高比压缩 xz -k file.tar(保留原文件)

用户管理

命令用途示例
useradd 创建用户 sudo useradd -m -s /bin/bash newuser
usermod 修改用户属性 sudo usermod -aG sudo username
userdel 删除用户 sudo userdel -r username
passwd 修改密码 passwd username
groupadd 创建用户组 sudo groupadd mygroup
groups 显示用户所属组 groups username
id 显示用户 UID/GID id username
who 查看当前登录用户 who
w 登录用户及活动 w
last 显示最近登录记录 last -n 10
sudo 以其他用户执行 sudo -u www-data command
su 切换用户 su - username

📖 深入学习:用户与权限管理

文本处理

命令用途示例
grep 搜索文件内容 grep -r "error" /var/log/
sed 流编辑器(查找替换) sed -i "s/old/new/g" file.txt
awk 文本处理与报告生成 awk "{print $1, $3}" file.txt
cut 按列切割文本 cut -d: -f1 /etc/passwd
sort 排序文本行 sort -t: -k3 -n /etc/group
uniq 去重(相邻行) sort file.txt | uniq -c | sort -rn
tr 字符转换 echo "hello" | tr a-z A-Z
tee 同时输出到文件和屏幕 command | tee log.txt
paste 合并文件列 paste file1 file2
join 按公共字段合并文件 join -t: file1 file2

📖 深入学习:重定向与管道 正则表达式

命令用途示例
find 在文件系统中搜索文件 find /home -name "*.pdf" -size +10M
locate 基于数据库快速查找 locate nginx.conf
which 查找可执行文件路径 which python3
whereis 查找二进制/源码/手册 whereis nginx
type 显示命令类型 type cd(内置命令)

📖 深入学习:进程管理

SSH 与远程

命令用途示例
ssh 远程登录 ssh -p 22 user@host
ssh-keygen 生成 SSH 密钥对 ssh-keygen -t ed25519
ssh-copy-id 部署公钥到服务器 ssh-copy-id user@host
ssh-add 添加密钥到代理 ssh-add ~/.ssh/id_ed25519
scp 基于 SSH 的文件复制 scp -r /local/dir user@host:/remote/
sftp 基于 SSH 的文件传输 sftp user@host
rsync 增量远程同步 rsync -avz --delete /src/ user@host:/dst/

📖 深入学习:系统信息与性能查看 SSH 深入

systemd 服务管理

命令用途示例
systemctl start 启动服务 sudo systemctl start nginx
systemctl stop 停止服务 sudo systemctl stop nginx
systemctl restart 重启服务 sudo systemctl restart nginx
systemctl reload 重载配置(不中断) sudo systemctl reload nginx
systemctl enable 设置开机自启 sudo systemctl enable nginx
systemctl disable 关闭开机自启 sudo systemctl disable nginx
systemctl status 查看服务状态 systemctl status nginx
systemctl list-units 列出所有单元 systemctl list-units --type=service
journalctl -u 查看服务日志 journalctl -u nginx -n 50
journalctl -f 实时跟踪日志 journalctl -u nginx -f

📖 深入学习:systemd 深入