Linux 作为一款开源的操作系统,凭借其稳定性、安全性和灵活性,在服务器、开发环境和嵌入式系统中得到了广泛应用,掌握 Linux 重要命令是高效使用系统的关键,以下从文件管理、系统监控、网络配置和文本处理等方面详细介绍常用命令及其用法。

在文件管理方面,ls 命令用于列出目录内容,常用选项包括 -l(显示详细信息)、-a(显示隐藏文件)和 -h(以人类可读格式显示文件大小)。cd 命令用于切换目录,cd .. 返回上级目录,cd ~ 进入用户主目录。cp 命令用于复制文件或目录,-r 选项用于递归复制目录。mv 命令可移动文件或重命名文件,rm 命令用于删除文件,-r 选项递归删除目录。mkdir 命令创建新目录,-p 选项可递归创建多级目录。touch 命令用于创建空文件或更新文件时间戳。find 命令根据文件名、大小、时间等条件查找文件,find / -name "*.log" 查找根目录下所有 .log 文件。
系统监控命令中,top 命令动态显示系统进程资源占用情况,按 M 按内存排序,按 C 按 CPU 排序。ps 命令查看静态进程列表,aux 选项显示所有进程详细信息。df 命令查看磁盘空间使用情况,-h 选项以 GB、MB 等单位显示。free 命令查看内存使用情况,-m 选项以 MB 为单位显示。uptime 命令显示系统运行时间和负载平均值。netstat 命令查看网络连接状态,-tuln 选项显示监听的 TCP 和 UDP 端口。
网络配置命令中,ifconfig 或 ip addr 命令查看和配置网络接口,ip addr add 192.168.1.100/24 dev eth0 为网卡添加 IP 地址。ping 命令测试网络连通性,ping -c 4 baidu.com 发送 4 个数据包。ssh 命令远程登录服务器,ssh user@192.168.1.100 以用户身份登录指定主机。scp 命令安全复制文件,scp local.txt user@remote:/home/user/ 将本地文件复制到远程服务器。wget 或 curl 命令下载文件,wget https://example.com/file.zip 下载指定文件。iptables 命令配置防火墙规则,iptables -A INPUT -p tcp --dport 22 -j ACCEPT 允许 22 端口访问。
文本处理命令中,grep 命案用于文本搜索,grep "error" log.txt 在日志文件中搜索包含 "error" 的行。sed 命令用于流编辑,sed 's/old/new/g' file.txt 替换文件中所有 "old" 为 "new"。awk 命案用于文本分析,awk '{print $1}' file.txt 输出每行第一列内容。cat 命令查看文件内容,more 或 less 命令分页查看文件。head 和 tail 命令分别查看文件开头和结尾内容,tail -f log.txt 实时监控文件更新。

以下为常用命令速查表:
| 命令类别 | 命令 | 功能 | 常用选项 |
|---|---|---|---|
| 文件管理 | ls | 列出目录内容 | -l, -a, -h |
| cp | 复制文件/目录 | -r | |
| mv | 移动/重命名文件 | -i | |
| 系统监控 | top | 动态显示进程 | -M, -C |
| df | 查看磁盘空间 | -h | |
| 网络配置 | ping | 测试网络连通性 | -c |
| ssh | 远程登录 | -p (指定端口) | |
| 文本处理 | grep | 文本搜索 | -i (忽略大小写) |
| sed | 流编辑 | -i (原地编辑) |
相关问答 FAQs
Q1:如何查看 Linux 系统的发行版信息?
A1:可以使用 lsb_release -a 命令查看 LSB(Linux Standard Base)信息,或通过 /etc/os-release 文件查看,命令为 cat /etc/os-release,对于某些系统,也可使用 uname -a 查看内核版本信息。
Q2:如何批量重命名文件?
A2:可以使用 rename 命令或 for 循环实现,使用 rename 's/old/new/' *.txt 将当前目录下所有 .txt 文件中的 "old" 替换为 "new";或通过 for f in *.txt; do mv "$f" "${f/old/new}"; done 实现,需注意变量引用和转义。
