📚 第一部分:认识Linux终端
1.1 什么是终端?
- 终端(Terminal) = Windows的命令提示符(CMD/PowerShell)的Linux版本
- Shell = 解释和执行命令的程序(Ubuntu默认使用Bash或Zsh)
1.2 打开终端的几种方式
Ctrl + Alt + T(最常用快捷键)- 搜索栏输入"Terminal"
- 右键桌面选择"Open Terminal"
🔐 第二部分:账户与权限
2.1 理解Linux用户
bash
# 查看当前用户
whoami
# 查看所有登录用户
who
# 查看用户信息
id
2.2 修改账户显示名称
bash
# 查看当前主机名
hostname
# 临时修改主机名(重启后失效)
sudo hostname 新名称
# 永久修改主机名
sudo nano /etc/hostname # 编辑文件中的名称
sudo nano /etc/hosts # 修改127.0.1.1对应的名称
# 重启生效
reboot
2.3 用户管理
bash
# 创建新用户
sudo adduser 新用户名
# 修改用户密码
passwd # 修改当前用户密码
sudo passwd 用户名 # 修改其他用户密码
# 删除用户
sudo deluser 用户名
# 切换到其他用户
su - 用户名
# 添加用户到sudo组(获得管理员权限)
sudo usermod -aG sudo 用户名
📁 第三部分:基础文件操作
3.1 目录导航
bash
# 查看当前目录
pwd
# 切换目录
cd /home/user # 绝对路径
cd Documents # 相对路径
cd .. # 返回上级目录
cd ~ # 返回家目录
cd - # 返回上一个目录
# 查看目录内容
ls # 简单列表
ls -l # 详细列表(权限、大小、时间)
ls -a # 显示隐藏文件(以.开头)
ls -lh # 人类可读的文件大小
3.2 文件操作
bash
# 创建文件
touch 文件名.txt # 创建空文件
echo "内容" > 文件名.txt # 创建并写入内容
# 查看文件
cat 文件名.txt # 显示全部内容
less 文件名.txt # 分页查看(按q退出)
head -n 10 文件名.txt # 查看前10行
tail -n 10 文件名.txt # 查看后10行
# 复制文件/目录
cp 源文件 目标文件 # 复制文件
cp -r 源目录 目标目录 # 复制目录
# 移动/重命名
mv 旧文件名 新文件名 # 重命名
mv 文件 目标目录/ # 移动文件
# 删除
rm 文件名 # 删除文件
rm -r 目录名 # 删除目录
rm -rf 目录名 # 强制删除(谨慎使用!)
# 创建目录
mkdir 目录名
mkdir -p dir1/dir2/dir3 # 创建多级目录
🛡️ 第四部分:权限管理
4.1 理解权限
-rwxr-xr--
↑ ↑ ↑ ↑
| | | 其他用户权限
| | 组用户权限
| 所有者权限
文件类型(-普通文件,d目录,l链接)
4.2 修改权限
bash
# 数字方式修改
chmod 755 文件名 # rwxr-xr-x
# 第一位:所有者权限 (7=rwx)
# 第二位:组权限 (5=r-x)
# 第三位:其他用户权限 (5=r-x)
# 符号方式修改
chmod u+x 文件名 # 给所有者添加执行权限
chmod g-w 文件名 # 移除组用户的写权限
chmod o=r 文件名 # 设置其他用户只读
# 修改所有者
chown 新所有者:新组 文件名
🔍 第五部分:查找与搜索
5.1 查找文件
bash
# 按名称查找
find /目录 -name "文件名"
# 按类型查找
find /目录 -type f # 查找文件
find /目录 -type d # 查找目录
# 按时间查找
find /目录 -mtime -7 # 7天内修改的文件
# 在文件中搜索内容
grep "搜索词" 文件名
grep -r "搜索词" 目录/ # 递归搜索
grep -i "搜索词" 文件名 # 忽略大小写
5.2 查找命令位置
bash
which 命令名 # 显示命令路径
whereis 命令名 # 显示命令及其手册位置
type 命令名 # 显示命令类型
⚙️ 第六部分:系统管理
6.1 进程管理
bash
# 查看进程
ps # 当前终端进程
ps aux # 所有用户的所有进程
top # 实时进程监控(类似任务管理器)
# 结束进程
kill 进程ID
kill -9 进程ID # 强制结束
pkill 进程名 # 按名称结束
# 后台运行
命令 & # 在后台运行命令
jobs # 查看后台作业
fg %作业号 # 切换到前台
bg %作业号 # 后台继续运行
6.2 磁盘与内存
bash
# 磁盘使用情况
df -h # 查看磁盘空间
du -sh 目录/ # 查看目录大小
# 内存使用情况
free -h # 查看内存使用
htop # 增强版top(需安装)
📦 第七部分:软件包管理
7.1 APT包管理器(Ubuntu专属)
bash
# 更新软件源列表
sudo apt update
# 升级已安装的包
sudo apt upgrade
# 安装软件
sudo apt install 软件名
# 删除软件
sudo apt remove 软件名
sudo apt purge 软件名 # 同时删除配置
# 搜索软件
apt search 关键字
# 查看软件信息
apt show 软件名
# 清理
sudo apt autoremove # 删除不需要的包
sudo apt clean # 清理下载的缓存
7.2 通用安装方法
bash
# 下载并安装.deb包
sudo dpkg -i 包名.deb
sudo apt install -f # 修复依赖
# 源码编译安装(通用方法)
tar -xzvf 源码.tar.gz # 解压
cd 源码目录
./configure # 配置
make # 编译
sudo make install # 安装
🔗 第八部分:网络相关
8.1 网络配置
bash
# 查看IP地址
ip addr show
ifconfig # 旧命令,可能需安装net-tools
# 网络测试
ping google.com
traceroute google.com
# 下载文件
wget 文件URL
curl -O 文件URL
# 查看端口
netstat -tulpn # 查看监听端口
ss -tulpn # 新命令,更快速
8.2 SSH远程连接
bash
# 连接到远程服务器
ssh 用户名@服务器IP
# 生成SSH密钥(免密码登录)
ssh-keygen -t rsa
ssh-copy-id 用户名@服务器IP
🎯 第九部分:实用技巧和小窍门
9.1 提高效率的技巧
bash
# 1. 命令历史
history # 查看命令历史
!编号 # 执行历史中对应编号的命令
!! # 上一条命令
Ctrl + R # 搜索历史命令
# 2. 命令别名
alias ll='ls -la' # 创建别名
unalias ll # 删除别名
# 3. 自动补全
Tab键 # 自动补全命令或文件名
Tab键按两次 # 显示所有选项
# 4. 重定向
命令 > 文件 # 输出重定向到文件(覆盖)
命令 >> 文件 # 输出追加到文件
命令 < 文件 # 从文件读取输入
# 5. 管道
命令1 | 命令2 # 将命令1的输出作为命令2的输入
9.2 常用快捷键
- Ctrl + C - 终止当前命令
- Ctrl + Z - 暂停当前命令
- Ctrl + D - 退出终端/结束输入
- Ctrl + L - 清屏(同clear命令)
- Ctrl + A - 光标移动到行首
- Ctrl + E - 光标移动到行尾
- Ctrl + U - 删除光标前所有内容
- Ctrl + K - 删除光标后所有内容
📝 第十部分:实践练习
练习1:创建个人工作区
bash
# 1. 创建个人项目目录
mkdir -p ~/projects/{python,web,scripts}
# 2. 创建测试文件
echo "Hello Linux!" > ~/projects/test.txt
# 3. 设置目录权限
chmod 755 ~/projects/
# 4. 创建备份
cp ~/projects/test.txt ~/projects/test_backup.txt
练习2:系统信息收集脚本
bash
# 创建脚本
nano ~/system_info.sh
# 添加以下内容:
#!/bin/bash
echo "=== 系统信息 ==="
echo "主机名: $(hostname)"
echo "用户: $(whoami)"
echo "时间: $(date)"
echo "内存: $(free -h | grep Mem)"
echo "磁盘: $(df -h / | tail -1)"
echo "=== 运行中进程 ==="
ps aux | head -10
# 保存后设置权限并运行
chmod +x ~/system_info.sh
./system_info.sh
🆘 第十一部分:遇到问题怎么办?
11.1 获取帮助
bash
# 查看命令手册
man 命令名
# 简略帮助
命令名 --help
# 内置命令帮助
help cd
# 在线文档
info 命令名
11.2 常见问题解决
- "权限被拒绝"
bash
sudo 命令 # 使用管理员权限
chmod +x 文件名 # 添加执行权限
- "命令未找到"
bash
# 1. 检查拼写
# 2. 确认软件已安装
# 3. 可能需要添加PATH
- "磁盘空间不足"
bash
df -h # 查看哪里满了
du -sh /* # 查看各目录大小
11.3 推荐学习资源
- 官方文档: help.ubuntu.com
- 在线教程: linuxjourney.com
- 交互学习: overthewire.org (wargames)
- 社区支持: askubuntu.com
📅 学习路线建议
第1周:熟悉基础
- 每天练习10个基础命令
- 在图形界面和终端之间切换使用
- 创建、移动、删除文件和目录
第2周:理解权限和用户
- 练习chmod和chown
- 创建和管理多个用户
- 理解sudo的工作原理
第3周:系统管理基础
- 学习进程管理
- 安装和卸载软件
- 了解系统日志位置
第4周:脚本自动化
- 学习bash脚本基础
- 创建实用脚本
- 设置定时任务(cron)
💡 给Windows用户的特别提示:
- Linux没有盘符概念(C:、D:),所有内容都在
/根目录下 - 文件路径使用正斜杠
/,不是反斜杠\ - 文件名区分大小写(file.txt ≠ File.txt)
- 文件扩展名不是必需的,但有助识别
- 大多数情况下不需要像Windows那样频繁重启
记住:学习终端就像学乐器,需要定期练习。开始时可能不习惯,但掌握了就会大幅提高效率!
祝你在Linux世界的学习之旅顺利! 🚀