Linux 命令大全 · Unix 对比 · 领域优势与应用案例
Linux 和 Unix 是操作系统领域最核心的两个技术体系。Linux 继承了 Unix 的设计哲学,但代码独立、开源开放;Unix 则更偏向厂商一体化交付和长期商业支持。本文从命令速查、核心区别、各自优势领域与应用案例三个维度展开,命令部分全部以表格形式呈现,便于查阅。
一、Linux 命令大全
以下以常见 GNU/Linux 发行版(Ubuntu、RHEL、Debian 等)为基准整理。Unix 各厂商系统(AIX、Solaris、HP-UX)命令选项可能不同,实际使用请以 man 为准。
1. 线上查询与帮助
| 命令 | 说明 | 常用示例 |
|---|
man | 查看命令手册页,最完整的帮助文档 | man ls |
help | 查看 Shell 内置命令帮助,如 cd、alias | help cd |
info | 查看更详细的 GNU 文档 | info coreutils |
2. 文件与目录操作
| 命令 | 说明 | 常用示例 |
|---|
ls | 列出目录内容 | ls -alh |
cd | 切换目录 | cd /etc |
pwd | 显示当前路径 | pwd |
cp | 复制文件或目录 | cp -r src dst |
mv | 移动或重命名 | mv old.txt new.txt |
rm | 删除文件或目录 | rm -rf dir(慎用) |
mkdir | 创建目录 | mkdir -p a/b/c |
rmdir | 删除空目录 | rmdir dir |
touch | 创建空文件或更新时间戳 | touch file.txt |
find | 在磁盘中查找文件 | find / -name "*.log" |
locate | 基于数据库快速查找 | locate nginx.conf |
tree | 树形展示目录 | tree -L 2 |
ln | 创建链接 | ln -s target link |
file | 识别文件类型 | file image.png |
stat | 查看文件详细状态 | stat file.txt |
chattr | 修改文件扩展属性 | chattr +i file |
lsattr | 查看文件扩展属性 | lsattr file |
md5sum | 校验文件 MD5 | md5sum file.iso |
3. 文件内容查看与处理
查看类
| 命令 | 说明 | 常用示例 |
|---|
cat | 连接并输出文件内容 | cat file.txt |
tac | 反向输出文件内容 | tac file.txt |
more | 分页查看,只能向下 | more file.txt |
less | 分页查看,可上下搜索 | less file.txt |
head | 查看文件头部 | head -n 20 file.txt |
tail | 查看文件尾部,可实时跟踪 | tail -f app.log |
文本处理类
| 命令 | 说明 | 常用示例 |
|---|
grep | 正则过滤文本 | grep -rn "error" /var/log |
egrep | 扩展正则过滤,已弃用,建议 grep -E | egrep "error" file |
sed | 流编辑器,替换、删除、插入 | sed 's/old/new/g' file |
awk | 按字段处理文本 | awk '{print $1}' file |
cut | 按列切割 | cut -d: -f1 /etc/passwd |
sort | 排序 | sort file.txt |
uniq | 去重,常与 sort 搭配 | uniq -c file.txt |
wc | 统计行、词、字节 | wc -l file.txt |
diff | 比较文件差异 | diff a.txt b.txt |
tr | 字符替换或删除 | tr 'a-z' 'A-Z' < file |
paste | 按行合并文件 | paste a.txt b.txt |
join | 按字段合并文件 | join a.txt b.txt |
split | 分割文件 | split -l 1000 file part_ |
iconv | 编码转换 | iconv -f GBK -t UTF-8 file |
4. 文件压缩与解压
| 命令 | 说明 | 常用示例 |
|---|
tar | 打包压缩,常配合 gzip/bzip2 | tar -czvf archive.tar.gz dir |
gzip | 压缩为 .gz | gzip file |
zip | 压缩为 .zip | zip -r archive.zip dir |
unzip | 解压 .zip | unzip archive.zip |
bzip2 | 压缩为 .bz2 | bzip2 file |
5. 系统信息与监控
| 命令 | 说明 | 常用示例 |
|---|
uname | 查看系统信息 | uname -a |
hostname | 查看或设置主机名 | hostname |
dmesg | 查看内核和开机日志 | dmesg |
uptime | 运行时间与平均负载 | uptime |
top | 实时资源监控 | top |
htop | 增强版 top,需额外安装 | htop |
free | 查看内存使用 | free -h |
df | 查看磁盘空间 | df -h |
du | 查看目录占用 | du -sh dir |
date | 查看或设置日期时间 | date |
cal | 查看日历 | cal |
6. 用户与权限管理
| 命令 | 说明 | 常用示例 |
|---|
useradd | 创建用户 | useradd -m user |
usermod | 修改用户 | usermod -aG sudo user |
userdel | 删除用户 | userdel -r user |
groupadd | 创建用户组 | groupadd dev |
passwd | 设置或修改密码 | passwd user |
chmod | 修改权限位 | chmod 755 file |
chown | 修改属主 | chown user:group file |
chgrp | 修改属组 | chgrp group file |
su | 切换用户 | su - user |
sudo | 以其他身份执行命令,通常为 root | sudo command |
visudo | 安全编辑 sudo 配置 | visudo |
7. 网络操作
| 命令 | 说明 | 常用示例 |
|---|
ifconfig | 查看网络接口,旧工具 | ifconfig |
ip | 查看和管理网络接口,新工具 | ip addr |
ping | 测试网络连通性 | ping -c 4 host |
netstat | 查看连接状态,旧工具 | netstat -tulnp |
ss | 查看连接状态,新工具 | ss -tulnp |
curl | 数据传输,支持多种协议 | curl -I url |
wget | 下载文件 | wget url |
ssh | 远程登录 | ssh user@host |
scp | 远程复制文件 | scp file user@host:/path |
traceroute | 路由追踪 | traceroute host |
dig | DNS 查询 | dig domain |
nslookup | DNS 查询 | nslookup domain |
8. 进程与作业管理
| 命令 | 说明 | 常用示例 |
|---|
ps | 查看进程快照 | ps aux |
top | 动态查看进程和资源 | top |
kill | 终止指定进程 | kill -9 PID |
killall | 按名称终止进程 | killall nginx |
nohup | 后台运行,不受挂断影响 | nohup command & |
bg | 将作业放到后台 | bg |
fg | 将作业调到前台 | fg |
crontab | 定时任务 | crontab -e |
at | 一次性定时任务 | at now + 1 hour |
9. 磁盘与文件系统
| 命令 | 说明 | 常用示例 |
|---|
fdisk | 磁盘分区,旧工具 | fdisk -l |
parted | 磁盘分区,支持 GPT | parted /dev/sdb |
mkfs | 格式化文件系统 | mkfs.ext4 /dev/sdb1 |
mount | 挂载文件系统 | mount /dev/sdb1 /mnt |
umount | 卸载文件系统 | umount /mnt |
fsck | 文件系统检查与修复 | fsck /dev/sdb1 |
lsof | 查看打开的文件和端口 | lsof /var/log/syslog |
10. Shell 与脚本相关
| 命令 | 说明 | 常用示例 |
|---|
alias | 设置命令别名 | alias ll='ls -alF' |
export | 设置或导出环境变量 | export PATH=$PATH:/opt/bin |
source | 在当前 Shell 执行脚本 | source ~/.bashrc |
echo | 输出内容 | echo "hello" |
printf | 格式化输出 | printf "%s\n" "hello" |
type | 判断命令类型 | type ls |
watch | 周期性执行命令 | watch -n 2 'df -h' |
二、Linux 与 Unix 的区别
Linux 并非 Unix 的“升级版”,两者是同源但不同路的技术体系。Unix 诞生于 1969 年贝尔实验室,Linux 由 Linus Torvalds 于 1991 年参照 Unix 设计哲学从零编写内核,属于“结构后代”而非代码后代。
| 维度 | Linux | Unix |
|---|
| 起源 | 1991 年 Linus Torvalds 创建,类 Unix | 1969 年贝尔实验室创建 |
| 本质 | 严格说是内核,实际使用为发行版 | 通常是完整商业操作系统 |
| 许可 | GPL 等开源许可,可自由修改分发 | 多为专有许可,需购买授权 |
| 内核 | 模块化单内核,可动态加载模块 | 传统单内核,厂商深度定制 |
| 硬件平台 | x86、ARM、RISC-V、大型机等广泛适配 | 主要运行在厂商硬件,如 Power、SPARC |
| 包管理 | apt、dnf、yum、pacman 等 | installp、SWM、IPS、pkgadd 等 |
| 命令工具 | GNU coreutils、util-linux 为主 | 厂商定制 Unix 工具,选项有差异 |
| 文件系统 | ext4、XFS、Btrfs 等 | JFS2、ZFS、UFS、VxFS 等 |
| 社区支持 | 全球开源社区 + 商业公司 | 主要依赖厂商支持 |
| 典型系统 | Ubuntu、RHEL、Debian、SUSE、Arch | AIX、Solaris、HP-UX、macOS |
一句话概括:Linux 继承了 Unix 的设计哲学,但代码独立、开源开放、硬件适配更广;Unix 更偏向厂商一体化交付和长期商业支持。
三、各自优势领域与应用案例
Linux 的优势领域与应用案例
服务器与云计算。 全球超过 70% 的 Web 服务器运行 Linux,AWS、阿里云等云平台的底层基础设施 95% 以上基于 Linux 构建。Docker 和 Kubernetes 等容器技术深度依赖 Linux 内核的 Namespace 与 Cgroups 特性。某互联网企业借助 Linux 容器技术,将服务器资源利用率从 30% 提升至 75%,运维成本降低 40%。
超级计算与航天。 全球最快的 500 台超级计算机全部运行 Linux。猎鹰 9 号火箭的飞行计算机同样运行 Linux。
嵌入式与物联网。 Linux 内核可裁剪至极小体积,轻量级发行版能在内存仅 64MB 的硬件上运行。全球超过 80% 的物联网网关设备采用 Linux 架构。在智能汽车领域,某车企基于 Linux 开发的车载系统可支持 100 个以上传感器的实时数据交互,响应速度比传统系统快 200ms。大多数管理型交换机、无线接入点和路由器也运行在嵌入式 Linux 上。
Android 与移动终端。 Google Android 系统的核心是 Linux 内核,目前有超过 25 亿台活跃的 Android 设备。
Unix 的优势领域与应用案例
金融与银行核心系统。 IBM AIX 和 Oracle Solaris 在银行核心交易系统中占据重要地位,以极高的可靠性和安全性支撑关键业务。例如 Huntington Bancshares 将 300 多个分支机构的 Lotus Notes 系统整合到 4 台 IBM AIX 服务器上,显著提升了可用性和可扩展性。
电信与通信基础设施。 电信运营商的核心计费、运营支撑系统长期依赖 Solaris 和 AIX 平台。Sun 的 Solaris 曾专为 ISP 市场推出定制版本,被用于支撑数百万并发用户的电子邮件和运营系统。在电信计费领域,福建电信采用了 Fujitsu SPARC Enterprise Solaris UNIX 高端服务器来构建网络计费平台。这些系统经过数十年实际负载考验,在高密度数据处理和长时间不间断运行方面具有独特优势。
混合云中的关键任务。 尽管 Linux 在增长,Solaris 和 AIX 在需要极高可靠性和安全性的行业中仍然不可或缺,金融、医疗、政府等关键任务场景仍在大量使用,并通过虚拟化、集群和资源管理等技术实现与现代混合云环境的集成。
领域对比一览
| 领域 | Linux 优秀表现与应用案例 | Unix 优秀表现与应用案例 |
|---|
| 服务器与云计算 | 全球多数 Web 服务器运行 Linux;AWS、阿里云底层大量基于 Linux;Docker、Kubernetes 深度依赖 Linux | 部分传统企业核心系统仍运行 AIX、Solaris,但新增云原生场景较少 |
| 超级计算 | TOP500 超级计算机基本全部运行 Linux,如 Summit、Frontier | 早期超算常见 Unix,现在多数被 Linux 取代 |
| 嵌入式与移动 | Android 基于 Linux 内核;路由器、IoT 网关、车机系统大量使用 Linux | 部分旧式嵌入式 Unix 系统仍有存量,但新项目较少 |
| 金融银行 | 新核心、分布式架构、容器化平台多选 Linux | IBM AIX 长期用于银行核心交易;例如 Huntington Bancshares 曾将分支机构系统整合到 AIX 服务器 |
| 电信与通信 | 5G、NFV、云化网络基础设施广泛采用 Linux | Solaris、AIX 曾长期支撑计费、运营支撑系统;例如福建电信采用 Solaris UNIX 高端服务器构建计费平台 |
| 关键任务与混合云 | 高可用集群、Kubernetes、成本低、生态活跃 | 长时间稳定运行、厂商支持、安全合规;医疗、政府、金融仍有大量存量 |
四、选择建议
| 场景 | 建议 |
|---|
| 新项目、云原生、容器、嵌入式、超算 | 优先 Linux |
| 已有大量 AIX/Solaris 核心交易系统 | 保留 Unix,新业务逐步迁移 Linux |
| 需要厂商强支持、长期稳定、合规要求高 | 评估 Unix 或商业 Linux 发行版 |
| 成本敏感、需要快速迭代、社区生态 | 优先 Linux |
总体趋势是:Linux 在新基础设施中占绝对主导;Unix 在金融、电信等存量关键系统中仍有不可替代的位置。实际生产环境常见“Linux + Unix 混合”策略。