掌握常用的Linux常用命令是作为码农的基本素养,无论你从事软件开发或者运维的的哪个细分领域。本文言简意赅,可作为指导书收藏。
Linux常用命令的分类:
- 基本文件操作
- 权限与用户管理
- 文件搜索与系统状态
- 网络管理
- 压缩与打包
- 系统管理与维护
- 磁盘与分区管理
- 开发与编程
- 文件权限与SELinux
- 其他实用工具

这些类别帮助快速找到不同功能的命令,便于针对性学习和使用。
1. 基本文件操作
| 命令 | 作用 |
|---|
| ls | 列出目录内容 |
| cd | 切换目录 |
| pwd | 显示当前工作目录 |
| mkdir | 创建新目录 |
| rmdir | 删除空目录 |
| cp | 复制文件或目录 |
| mv | 移动或重命名文件/目录 |
| rm | 删除文件或目录 |
| touch | 创建一个空文件 |
| cat | 查看文件内容 |
| more | 分页查看文件内容 |
| less | 分页查看文件内容,支持上下滚动 |
| head | 查看文件的前几行 |
| tail | 查看文件的后几行 |
| find | 搜索文件或目录 |
| locate | 快速查找文件 |
| ln | 创建链接(软链接或硬链接) |
2. 权限与用户管理
| 命令 | 作用 |
|---|
| chmod | 更改文件权限 |
| chown | 更改文件的拥有者和组 |
| chgrp | 更改文件的组 |
| passwd | 更改用户密码 |
| who | 显示当前登录的用户 |
| whoami | 显示当前用户的用户名 |
| su | 切换用户身份 |
| sudo | 以超级用户权限运行命令 |
| useradd | 添加新用户 |
| userdel | 删除用户 |
| usermod | 修改用户属性 |
| groupadd | 添加新组 |
| groupdel | 删除组 |
| groups | 显示用户所属的组 |
3. 文件搜索与系统状态
| 命令 | 作用 |
|---|
| grep | 搜索文本中的内容 |
| awk | 文本处理工具,适合格式化输出 |
| sed | 流编辑器,用于替换文件内容 |
| df | 查看磁盘使用情况 |
| du | 查看目录或文件的大小 |
| top | 实时显示系统进程状态 |
| ps | 显示当前的进程列表 |
| kill | 结束进程 |
| pkill | 通过进程名终止进程 |
| free | 显示内存使用情况 |
| uptime | 显示系统运行时间 |
| dmesg | 显示内核信息 |
| vmstat | 显示虚拟内存的使用情况 |
| iostat | 显示I/O设备使用情况 |
4. 网络管理
| 命令 | 作用 |
|---|
| ping | 测试网络连接状态 |
| ifconfig | 显示或配置网络接口 |
| ip | 查看或操作网络接口 |
| netstat | 显示网络连接、路由表等 |
| ss | 查看套接字统计信息 |
| traceroute | 跟踪数据包路由路径 |
| nslookup | 查询域名信息 |
| dig | 进行DNS查询 |
| route | 显示或修改路由表 |
| curl | 发送网络请求 |
| wget | 下载文件 |
5. 压缩与打包
| 命令 | 作用 |
|---|
| tar | 创建或解压归档文件 |
| gzip | 压缩文件 |
| gunzip | 解压gzip文件 |
| zip | 创建zip压缩文件 |
| unzip | 解压zip文件 |
| bzip2 | 压缩文件,压缩比高于gzip |
| bunzip2 | 解压bzip2文件 |
6. 系统管理与维护
| 命令 | 作用 |
|---|
| shutdown | 关机 |
| reboot | 重启系统 |
| systemctl | 控制系统服务和启动项 |
| service | 管理系统服务(旧版) |
| journalctl | 查看系统日志 |
| crontab | 设置定时任务 |
| at | 指定时间执行命令 |
| uptime | 查看系统运行时间 |
| uname | 显示系统信息 |
| hostname | 显示或设置系统主机名 |
7. 磁盘与分区管理
| 命令 | 作用 |
|---|
| fdisk | 磁盘分区管理工具 |
| mkfs | 格式化分区 |
| mount | 挂载文件系统 |
| umount | 卸载文件系统 |
| parted | 先进的磁盘分区管理工具 |
| lsblk | 列出块设备信息 |
| blkid | 显示分区的UUID等信息 |
| fsck | 检查和修复文件系统 |
8. 开发与编程
| 命令 | 作用 |
|---|
| gcc | GNU编译器,用于编译C语言代码 |
| make | 编译和管理项目的工具 |
| gdb | GNU调试器,用于调试程序 |
| strace | 跟踪系统调用和信号 |
| lsof | 列出打开的文件 |
| time | 计时执行命令的时间 |
| diff | 比较文件的不同 |
| patch | 应用补丁文件 |
| echo | 输出文本内容到终端或文件 |
9. 文件权限与SELinux
| 命令 | 作用 |
|---|
| getfacl | 查看文件的ACL权限 |
| setfacl | 设置文件的ACL权限 |
| getenforce | 显示SELinux的当前模式 |
| setenforce | 设置SELinux模式 |
10. 其他实用工具
| 命令 | 作用 |
|---|
| history | 查看历史命令 |
| alias | 创建命令别名 |
| date | 显示或设置系统时间 |
| cal | 显示日历 |
| bc | 计算器工具 |
| man | 查看命令手册 |
| info | 查看命令的详细信息 |
| export | 设置环境变量 |
| env | 查看环境变量 |
| clear | 清屏 |
| exit | 退出当前终端 |
这些命令涵盖了Linux系统中常见的文件操作、权限管理、系统状态查看、网络管理等方面的功能。建议从最常用的命令开始练习,并通过man命令深入了解每个命令的详细用法。