Linux是服务器、开发环境和嵌入式系统的基石。掌握高效的命令行操作可以显著提升你的工作效率和系统管理能力。本指南将带你从Linux基础进阶到精通的系统管理水平。
第一章:Linux基础
理解Linux的核心概念和基本操作:
1. Shell与终端
Shell是用户与内核之间的接口,常用的Shell包括:
- Bash (Bourne Again SHell) - 最常用,本指南默认使用
- Zsh - 功能增强版,配置灵活
- Fish - 用户友好,语法高亮
2. 目录结构
理解Linux的文件系统层次结构:
/ # 根目录
├── bin # essential user command
├── etc # Configuration files
├── home # User home directories
├── lib # Essential shared libraries
├── opt # Optional/add-on software
├── usr # User programs and data
├── var # Variable data (logs, temp, etc.)
└── ...
第二章:文件和目录管理
1. 基本导航
# 显示当前目录
pwd
# 列出目录内容
ls # 列出文件
ls -la # 列出包括隐藏文件在内的详细信息
ls -lh # 人类可读的尺寸格式
# 目录跳转
cd / # 切换到根目录
cd .. # 返回上级目录
cd ~ # 返回家目录
cd /var/log # 切换到具体目录
2. 文件操作
# 创建
touch filename.txt # 创建空文件
mkdir folder_name # 创建目录
mkdir -p path/to/folder # 递归创建目录
# 复制和移动
cp source destination # 复制文件或目录
mv source destination # 移动或重命名
# 删除
rm filename.txt # 删除文件
rm -r folder_name # 删除目录
rm -rf folder_name # 强制删除(小心使用!)
# 查看
cat filename.txt # 显示文件内容
less filename.txt # 分页查看文件内容
head -n 10 filename.txt # 查看前10行
tail -n 10 filename.txt # 查看后10行
第三章:文本处理
1. grep - 搜索文本
# 基本用法
grep "pattern" filename.txt # 查找包含pattern的行
grep -n "pattern" filename.txt # 显示行号
grep -i "pattern" filename.txt # 忽略大小写搜索
grep -r "pattern" /path/ # 递归搜索目录
# 高级用法
grep -c "pattern" filename.txt # 计数匹配行数
grep -B 2 -A 2 "pattern" # 显示前2行和后2行上下文
2. sed - 流编辑器
# 文本替换
sed -i 's/old_text/new_text/g' filename.txt # 文件中全局替换
# 删除特定行
sed -i '5d' filename.txt # 删除第5行
# 插入内容
sed -i '5a new line' filename.txt # 在第5行后插入新行
3. awk - 文本处理
# 打印特定列
awk '{print $1}' filename.txt # 打印每行第一列
# 条件处理
awk 'NR>5 && NR<10 {print $0}' filename.txt # 打印第6-9行
# 计算求和
awk '{sum+=$1} END {print sum}' filename.txt # 求第一列总和
第四章:权限与所有权
1. 权限系统
Linux使用三种权限:读(r)、写(w)、执行(x),针对三种用户:所有者、所属组、其他人。
# 查看权限
ls -l filename.txt
# 权限表示法
# rwxr-xr-x -> 755 (all rwx, group r-x, other r-x)
# rw-r--r-- -> 644 (all rw, group r--, other r--)
# 修改权限
chmod +x filename.txt # 添加执行权限
chmod 755 filename.txt # 设置为755权限
chmod u+x filename.txt # 给所有者添加执行权限
chmod g-w filename.txt # 从组移除写权限
chmod o+r filename.txt # 给其他添加读权限
2. 所有者和组
# 查看所有者和组
ls -l filename.txt
# 修改所有者
chown newowner filename.txt # 修改文件所有者
chown newowner:newgroup filename.txt # 修改所有者和组
# 修改组
chgrp newgroup filename.txt # 修改文件组
第五章:进程管理
1. 查看进程
# 查看所有进程
ps aux
# 实时监控
top
# 特定视图
ps -ef # 显示所有进程的完整信息
pgrep name # 查找名为name的进程PID
2. 控制进程
# 停止进程
kill PID # 发送终止信号
kill -9 PID # 强制杀进程 (SIGKILL)
# 后台和前台
bg # 恢复后台作业
fg # Bring to foreground
CTRL+Z # 暂停当前前台作业
总结
从入门到精通Linux命令的路径包括:
- 掌握基础的目录导航和文件操作
- 学习强大的文本处理工具 (grep, sed, awk)
- 理解权限系统和所有权管理
- 熟练使用进程管理命令
- 结合实战场景进行练习和应用
记住,命令行的效率取决于记忆和习惯的养成。从常用的命令开始练习,逐步扩展你的工具箱。从今天开始在终端中多花一些时间,你会发现命令行的力量和快感。
最重要的原则:慎用rm -rf,多用Tab键自动补全,养成良好的备份习惯。