Linux 核心命令深度指南:从基础操作到系统维护

涵盖文件管理、进程控制、网络配置及系统调试等 50 多个核心 Linux 命令,旨在帮助开发者和系统管理员提升终端操作效率。

阅读时长: 4 分钟
共 1597字
作者: eimoon.com

在 Linux 操作系统中,命令行工具是系统管理、程序开发及故障排查的基础。掌握高效的终端命令不仅能提升操作效率,还能更深入地理解系统底层逻辑。下文将从文件管理、网络配置、进程监控、权限控制等维度,详细介绍 50 多个核心 Linux 命令的应用场景与操作细节。

一、 文件与目录操作

文件系统操作是终端使用的基础,涵盖了从简单的目录切换到复杂的权限修改等任务。

命令 描述 典型示例
ls 列出目录内容 ls -la
cd 切换当前工作目录 cd /var/log
pwd 显示当前工作路径 pwd
mkdir 创建新目录 mkdir -p /path/to/dir
rm 删除文件或目录 rm -rf dir_name
cp 复制文件或目录 cp source.txt dest.txt
mv 移动或重命名文件 mv old_name.txt new_name.txt
touch 创建空文件或更新时间戳 touch app.log
cat 连接并显示文件内容 cat config.conf
chmod 修改文件权限模式 chmod 755 script.sh
chown 修改文件所有者 chown user:group file
find 在目录树中搜索文件 find . -name "*.log"
tar 磁带归档工具,用于压缩与解压 tar -cvf archive.tar dir/

链接创建:ln 命令

ln 命令用于创建指向文件的链接。通过 -s 参数可创建符号链接(软链接),它类似于 Windows 的快捷方式。若不加参数,则创建硬链接,硬链接是原始文件的镜像副本,即使删除原文件,硬链接依然可用。

# 创建软链接
ln -s /path/to/original /path/to/link

二、 网络管理与调试

网络工具用于检测连接性、追踪数据包路径以及下载远程资源。

命令 描述 典型示例
ping 测试主机连通性 ping google.com
ifconfig 配置或显示网络接口信息 ifconfig
ip a 现代 Linux 中替代 ifconfig 的工具 ip a
ssh 安全远程登录协议 ssh user@remote_host
wget 非交互式网络下载器 wget http://example.com/file.zip
curl 数据传输工具,支持多种协议 curl -I https://example.com
traceroute 显示数据包到达主机的路由路径 traceroute example.com
netstat 显示网络连接与路由表 netstat -tuln

防火墙管理:ufw 与 iptables

ufw(Uncomplicated Firewall)为 Linux 内核的 netfilter 提供了简化的接口。相比于语法复杂的 iptablesufw 允许操作者通过直观的命令开启端口。

# 使用 ufw 允许 80 端口流量
sudo ufw allow 80
# 使用 iptables 实现相同功能
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

三、 进程监控与系统状态

实时监控系统资源利用率是排查性能瓶颈的关键。

命令 描述 典型示例
ps 报告当前进程快照 ps aux
top 实时显示进程动态 top
htop 交互式进程查看器(需安装) htop
kill 终止指定 PID 的进程 kill -9 1234
df 报告文件系统磁盘空间使用情况 df -h
du 估算目录空间占用 du -sh /var/log
free 显示系统内存使用情况 free -h
uptime 显示系统运行时间及负载 uptime

动态监控:top 命令

top 命令提供了类似于任务管理器的界面。在运行界面中,可观察 CPU 使用率、内存占用以及各进程的状态。通过 top -o MEM 可按内存消耗对进程进行排序,快速定位内存泄漏来源。

四、 文本处理与搜索

Linux 遵循“一切皆文件”的原则,因此文本处理命令在自动化脚本中至关重要。

命令 描述 典型示例
grep 强大的文本搜索工具 grep "error" sys.log
sed 流编辑器,用于过滤和转换文本 sed 's/old/new/g' file
awk 文本分析与处理语言 awk '{print $1}' file
head 输出文件开头部分 head -n 20 file
tail 输出文件结尾部分 tail -f access.log
sort 对文本行进行排序 sort -n numbers.txt
diff 逐行比较文件差异 diff file1 file2

搜索与过滤:grep 命令

grep 常与其他命令配合使用。通过管道符 |,可以将前一个命令的输出作为搜索对象。例如,查找所有正在运行的 python 进程:

ps aux | grep "python"

五、 用户权限管理

权限控制是 Linux 安全模型的基石,通过 sudo 机制可以实现最小权限原则。

  • sudo: 以超级用户权限执行命令。
  • useradd / usermod: 创建或修改用户信息。
  • passwd: 修改用户密码。
  • whoami: 显示当前登录用户名。
# 修改指定用户的密码
sudo passwd username
# 将用户添加到 sudo 组
sudo usermod -aG sudo username

六、 常见错误调试与排查

在操作命令行时,常见的性能瓶颈或逻辑错误可通过以下方式排查:

  1. 命令未找到 (Command Not Found):检查命令是否已安装,或相关二进制路径是否包含在系统 PATH 环境变量中。
  2. 权限拒绝 (Permission Denied):确认当前用户对文件是否有读/写/执行权限,必要时使用 sudo 提权。
  3. IO 瓶颈:使用 iostatvmstat 观察磁盘活动,判断系统卡顿是否由高 IO 等待引起。
  4. 文件冲突:在多进程写入场景下,可利用 flock 实施文件锁,或通过 mv 的原子性操作规避写入冲突。

七、 结语

熟练运用上述命令能够显著提升系统管理效率。建议通过 man <command> 获取每个命令的完整手册页,深入了解各参数的特定用途。从简单的文件移动到复杂的网络分析,命令行工具提供了几乎无限的组合可能,是构建稳定、高效服务器环境的核心支柱。

关于

关注我获取更多资讯

月球基地博客公众号二维码,扫码关注获取更多 AI 与编程资讯
📢 公众号
月球基地博客作者个人微信二维码,扫码交流 AI 与编程话题
💬 个人号
使用 Hugo 构建
主题 StackJimmy 设计