Linux 的命令是操作系统与用户交互的核心桥梁,通过简洁的文本指令实现对系统资源、文件、进程、网络等全方位的管理,无论是系统管理员、开发者还是普通用户,掌握 Linux 命令都是高效使用 Linux 系统的基础,以下将从命令基础、文件管理、进程控制、网络操作、文本处理、系统维护及高级技巧七个维度,详细解析 Linux 命令的核心功能与使用方法。

命令基础:语法与核心概念
Linux 命令的基本语法结构为 命令选项 参数,其中选项以短横线 或双短横线 开头,用于修饰命令行为,参数则是命令操作的对象。ls -l /home 中,ls 是命令,-l 是选项(以长格式显示),/home 是参数(目标目录)。
核心概念:
- 命令类型:分为内置命令(如
cd、pwd,由 shell 直接解释)和外部命令(如ls、grep,独立程序文件,位于/bin、/usr/bin等目录)。 - 命令帮助:通过
man 命令名查看手册(如man ls),或命令名 --help获取简要选项说明(如ls --help)。 - 通配符: 匹配任意字符(如
*.txt匹配所有文本文件), 匹配单个字符(如test?.log匹配test1.log到test9.log),[]匹配指定范围(如[a-z]匹配小写字母)。
文件与目录管理:基础操作的核心
文件管理是 Linux 最频繁的操作,常用命令包括 ls、cd、cp、mv、rm、mkdir、touch 等。
| 命令 | 功能描述 | 常用选项示例 |
|---|---|---|
ls |
列出目录内容 | -l(长格式,显示权限、大小等)、-a(显示隐藏文件)、-h(人类可读大小,如 1K、1M) |
cd |
切换工作目录 | (用户家目录)、(上级目录)、(上次目录) |
cp |
复制文件或目录 | -r(递归复制目录)、-p(保留权限、时间戳) |
mv |
移动文件/目录或重命名 | 无需选项,直接 mv 源文件 目标文件 |
rm |
删除文件或目录 | -r(递归删除目录)、-f(强制删除,不提示) |
mkdir |
创建目录 | -p(递归创建多级目录,如 mkdir -p a/b/c) |
touch |
创建空文件或更新文件时间戳 | 无需选项,直接 touch 文件名 |
高级操作:

- 批量重命名:结合
rename命令(需安装prename包),如rename 's/old/new/' *.txt将所有.txt文件中的old替换为new。 - 文件查找:
find命令按条件查找,如find /home -name "*.log" -mtime +7查找/home下 7 天前修改的.log文件;locate命令(基于数据库)快速查找,如locate config.conf。
进程管理:系统资源的调度核心
进程是程序执行的实例,Linux 通过 ps、top、kill 等命令管理进程。
| 命令 | 功能描述 | 常用选项示例 |
|---|---|---|
ps |
查看当前进程 | -ef(显示所有进程,完整信息)、-aux(显示进程资源占用) |
top |
实时监控进程状态(动态更新) | -p PID(监控指定进程)、-d 5(刷新间隔 5 秒) |
kill |
终止进程 | -9(强制终止,如 kill -9 1234)、-15(正常终止,默认) |
jobs |
查看后台任务 | -l(显示进程 ID) |
fg/bg |
将后台任务调到前台/继续后台运行 | fg %1(将任务 1 调到前台) |
进程优先级:通过 nice 和 renice 调整,nice 启动时设置(如 nice -n 5 command,值越高优先级越低),renice 运行时调整(如 renice 10 1234)。
网络操作:系统互联的纽带
Linux 提供丰富的网络命令,用于配置、诊断和管理网络连接。
| 命令 | 功能描述 | 常用选项示例 |
|---|---|---|
ifconfig |
配置和显示网络接口(需安装 net-tools) |
eth0 up/down(启用/禁用接口)、addr 192.168.1.100(设置 IP) |
ip |
现代化网络管理工具(替代 ifconfig) |
ip addr show(显示 IP)、ip link set eth0 up(启用接口) |
ping |
测试网络连通性 | -c 4(发送 4 个包)、-i 2(间隔 2 秒) |
netstat |
显示网络连接、路由表、接口统计 | -an(显示所有连接,数字形式)、-tuln(显示监听端口) |
ss |
替代 netstat 的工具(更快) |
-tuln(显示监听端口)、-state ESTAB(显示已连接) |
curl |
传输数据(HTTP/FTP 等) | -O(保存文件,如 curl -O http://example.com/file.zip) |
wget |
下载文件(支持断点续传) | -c(断点续传)、-r(递归下载) |
网络配置文件:主要位于 /etc/network/interfaces(Debian/Ubuntu)或 /etc/sysconfig/network-scripts/(CentOS/RHEL),配置静态 IP 或 DHCP。

文本处理:Linux 的“瑞士军刀”
Linux 擅长通过管道符 连接命令,实现文本的过滤、统计和编辑。
| 命令 | 功能描述 | 常用选项示例 |
|---|---|---|
cat |
查看文件内容(一次性输出) | -n(显示行号)、-A(显示所有字符,含空格和换行) |
less |
分页查看文件(支持上下翻页) | (搜索)、q(退出) |
grep |
文本过滤(匹配行) | -i(忽略大小写)、-v(反向匹配)、-n(显示行号) |
sed |
流编辑器(修改文本) | s/old/new/g(全局替换)、-i(直接修改文件) |
awk |
文本处理(按列/字段处理) | -F:(指定分隔符,如 /etc/passwd 的 )、'{print $1}'(输出第一列) |
sort |
文本排序 | -n(数字排序)、-r(倒序)、-k 2(按第二列排序) |
uniq |
去重(连续行) | -i(忽略大小写)、-c(统计重复次数) |
示例:
- 统计日志文件中访问量最高的 IP:
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -5。 - 提取配置文件中的端口号:
grep -oP 'port\s+\K\d+' config.conf(\K忽略前面匹配的内容)。
系统维护与管理:保障稳定运行
系统维护命令用于监控资源、管理用户、清理日志等,确保系统稳定高效。
| 命令 | 功能描述 | 常用选项示例 |
|---|---|---|
df |
查看磁盘空间使用情况 | -h(人类可读)、-T(显示文件系统类型) |
du |
查看目录/文件大小 | -sh(总大小,人类可读)、--max-depth=1(只统计一级目录) |
free |
查看内存使用情况 | -h(人类可读)、-m(以 MB 为单位) |
useradd |
创建用户 | -m(创建家目录)、-s /bin/bash(指定 shell) |
passwd |
修改用户密码 | 无需选项,直接 passwd username |
chmod |
修改文件权限 | 755(所有者读写执行,其他用户读执行)、-R(递归修改目录) |
chown |
修改文件所有者 | -R user:group(递归修改所有者和组) |
systemctl |
管理系统服务(Systemd) | start/stop/restart 服务名、enable/disable(开机自启) |
journalctl |
查看系统日志(Systemd 日志) | -u 服务名(过滤服务日志)、-f(实时跟踪) |
高级技巧:提升效率的进阶方法
- 命令别名:通过
alias定义简写,如alias ll='ls -la',永久生效需写入~/.bashrc或~/.zshrc。 - 管道与重定向: 连接命令(如
cat file.txt | grep "error"),>覆盖输出(如echo "hello" > file.txt),>>追加输出(如echo "world" >> file.txt),<从文件输入(如sort < numbers.txt)。 - 脚本自动化:通过
bash脚本批量执行命令,例如定时备份脚本:#!/bin/bash; tar -czf backup_$(date +%Y%m%d).tar.gz /data,结合crontab -e设置定时任务(如0 2 * * * /path/to/backup.sh每天凌晨 2 点执行)。
相关问答 FAQs
Q1:Linux 中 和 分别代表什么?
A: 表示当前目录, 表示当前目录的上级目录。cd . 切换到当前目录(无实际变化),cd .. 返回上一级目录;cp file.txt ./backup/ 将 file.txt 复制到当前目录下的 backup 文件夹,cp file.txt ../doc/ 则复制到上级目录的 doc 文件夹。
Q2:如何查找并强制删除系统中所有 .tmp 后缀的文件?
A:使用 find 命令查找文件并通过 xargs 或 -exec 删除,方法一:find / -name "*.tmp" -type f -exec rm -f {} \;(-type f 确保只删除文件,-exec rm -f {} \; 对每个文件执行强制删除);方法二:find / -name "*.tmp" -type f | xargs rm -f(通过管道传递文件列表给 xargs),注意:find / 会遍历整个系统,建议先指定具体目录(如 /home 或 /tmp)以避免误删。
