Linux基础部分
基础大纲
『放一张大纲导图』
注意
学习前一定要自己配置一个Linux虚拟机,并尝试使用远程连接工具连接访问!!!
配置部分不在该讲解范围内。
一、基本命令使用
1. Linux 文件系统结构
简介
Linux 文件系统结构采用树形结构,根目录 /
是整个文件系统的起点,其他目录和文件都是在此基础上扩展的。
常用目录
目录 | 描述 |
---|---|
/bin | 基本用户命令存放目录,二进制文件 |
/etc | 系统配置文件 |
/home | 普通用户的主目录 |
/root | 系统管理员(root 用户)的主目录 |
/var | 可变数据目录,日志、缓存等 |
/tmp | 临时文件目录 |
/usr | 用户程序及数据目录 |
示例
bash
ls / # 查看根目录内容
ls /bin # 查看基本命令目录
ls /etc # 查看系统配置文件目录
2. 基本命令操作
文件和目录管理
列出文件和目录:
ls
ls -l
:显示详细信息ls -a
:显示隐藏文件ls -lh
:以人类可读格式显示文件大小
进入和退出目录:
cd
cd /home/user
:进入指定目录cd ..
:返回上一级目录cd ~
:返回当前用户的主目录
创建和删除目录:
mkdir
和rmdir
mkdir my_dir
:创建一个名为my_dir
的目录rmdir my_dir
:删除空目录my_dir
rm -r my_dir
:递归删除目录及其内容
文件操作
创建文件:
touch
bashtouch file1.txt # 创建空文件 echo "Hello, Linux!" > file1.txt # 写入内容
复制和移动文件:
cp
和mv
bashcp file1.txt file2.txt # 复制文件 mv file2.txt newfile.txt # 重命名或移动文件
查看文件内容:
cat
、less
bashcat file1.txt # 查看整个文件内容 less file1.txt # 分页查看文件内容
3. 文件权限管理
权限表示
每个文件权限用 rwx
表示:
r
:读权限w
:写权限x
:执行权限
查看和修改权限
查看权限:
ls -l
- 输出示例:
-rw-r--r-- 1 user group 0 date file.txt
- 输出示例:
修改权限:
chmod
chmod 755 file.txt
:将文件权限改为所有者可读写执行,组和其他人可读执行chmod u+x file.txt
:给文件所有者增加执行权限
更改文件所有者:
chown
bashsudo chown user:group file.txt # 改变文件所有者和所属组
4. 文本查看
查看文本文件
- 基本查看:bash
cat file.txt # 快速查看文件内容 head -n 5 file.txt # 查看前 5 行 tail -n 5 file.txt # 查看后 5 行
查找内容
查找指定字符串:
grep
bashgrep "pattern" file.txt # 在文件中查找 "pattern" grep -i "pattern" file.txt # 忽略大小写查找
5. Vim 编辑器基础
5.1 进入退出
- 启动 Vim:
vim file.txt
- 退出 Vim:
:q!
不保存退出,:wq
保存并退出
5.2 模式
- 普通模式:用于导航和命令操作,按
Esc
键进入。 - 插入模式:用于文本编辑,按
i
键进入。 - 命令行模式:按
:
进入,用于保存、退出、查找替换等操作。
5.3 基本操作
删除和复制:
dd
:删除当前行yy
:复制当前行p
:粘贴到光标后
查找与替换:
vim/text # 查找 "text" :%s/old/new/g # 全局替换 "old" 为 "new"
撤销与重做:
u
:撤销Ctrl + r
:重做
6. 进程管理
查看进程
- 查看当前用户进程:
ps
bashps # 查看当前终端的进程 ps aux # 查看系统所有进程 top # 实时查看进程资源使用
管理进程
- 结束进程:bash
kill <PID> # 终止指定进程 kill -9 <PID> # 强制终止进程
示例
- 使用
ps aux
查看所有进程,找到进程 ID,然后使用kill <PID>
终止某个进程。
7. 网络管理
查看网络配置
- 查看网络接口信息:
ifconfig
或ip addr
- 测试网络连通性:
ping
bashping google.com # 测试网络连通性
查看网络端口
- 查看监听端口:
netstat
或ss
bashnetstat -tuln # 查看监听的端口和服务
抓取网页内容
- 抓取内容:
curl
bashcurl http://example.com # 获取网页内容
8. 用户和组管理
用户管理
- 添加用户:
useradd
bashsudo useradd newuser sudo passwd newuser # 设置密码
- 修改用户组:
usermod
bashsudo usermod -aG group user # 添加用户到组
9. 文件查找
查找文件
- 查找文件:
find
bashfind / -name "file.txt" # 按文件名查找 find / -type f -size +1M # 查找大于 1MB 的文件
- 快速查找:
locate
bashlocate file.txt # 快速查找
查找可执行文件
bash
which xxx # 例如查找mpicc:which mpicc
10. 归档与压缩
打包和解压
- 打包文件:
tar
bashtar -cvf archive.tar mydir/ # 打包目录 tar -xvf archive.tar # 解包 gzip archive.tar # 压缩 gunzip archive.tar.gz # 解压缩
11. 系统更新与软件管理
更新系统和安装软件包
- Debian 系统:bash
sudo apt update && sudo apt upgrade sudo apt install package_name
- Red Hat 系统:bash
sudo yum update sudo yum install package_name
12. 日志管理
查看日志
系统日志文件
/var/log/syslog
:系统事件日志(Debian 系统)/var/log/messages
:系统消息日志(RHEL 系统)
实时查看日志:
bashtail -f /var/log/syslog # 实时查看日志
二、VIM操作命令
1. Vim 模式简介
Vim 中有三种常用模式,每种模式有特定的功能和快捷键:
- 普通模式:用于执行命令操作。按
Esc
键进入普通模式。 - 插入模式:用于输入和编辑文本。按
i
、a
、o
进入插入模式。 - 可视模式:用于文本选择操作。按
v
进入字符选择,V
进入行选择,Ctrl + v
进入列选择。
2. 启动和退出 Vim
启动
bash
vim filename # 打开或创建名为 filename 的文件
退出
命令 | 作用 |
---|---|
:q | 退出(不保存) |
:q! | 强制退出,不保存更改 |
:w | 保存文件 |
:wq 或 :x | 保存并退出 |
ZZ | 保存并退出 |
3. 插入模式操作
按以下快捷键可以快速进入插入模式:
快捷键 | 作用 |
---|---|
i | 在光标前插入 |
I | 在当前行行首插入 |
a | 在光标后插入 |
A | 在当前行行尾插入 |
o | 在当前行下方插入新行 |
O | 在当前行上方插入新行 |
4. 普通模式基础操作
光标移动
快捷键 | 作用 |
---|---|
h 、j 、k 、l | 左、下、上、右移动 |
0 | 移动到行首 |
$ | 移动到行尾 |
w | 移动到下一个单词的开头 |
b | 移动到前一个单词的开头 |
gg | 移动到文件开头 |
G | 移动到文件末尾 |
Ctrl + u | 向上滚动半屏 |
Ctrl + d | 向下滚动半屏 |
删除操作
快捷键 | 作用 |
---|---|
x | 删除光标所在字符 |
dd | 删除整行 |
d0 | 删除至行首 |
d$ | 删除至行尾 |
dw | 删除一个单词 |
D | 删除至行尾(相当于 d$ ) |
复制和粘贴
快捷键 | 作用 |
---|---|
yy 或 Y | 复制当前行 |
yw | 复制当前单词 |
p | 在光标后粘贴 |
P | 在光标前粘贴 |
撤销与重做
快捷键 | 作用 |
---|---|
u | 撤销上一步操作 |
Ctrl + r | 重做撤销的操作 |
5. 可视模式(选择操作)
在普通模式中按 v
、V
、或 Ctrl + v
进入可视模式,用于文本选择和批量操作:
快捷键 | 作用 |
---|---|
v | 进入字符选择模式 |
V | 进入行选择模式 |
Ctrl + v | 进入块选择模式 |
y | 复制选择内容 |
d | 删除选择内容 |
> 或 < | 缩进/反缩进选择内容 |
6. 查找与替换
查找
- 在普通模式中输入
/
或?
后跟查找的文本:/text
:从光标位置向下查找text
?text
:从光标位置向上查找text
- 按
n
查找下一个匹配,N
查找上一个匹配。
替换
- 使用
:s
命令在当前行替换:vim:s/old/new # 替换当前行第一个匹配的 "old" 为 "new" :s/old/new/g # 替换当前行所有 "old" 为 "new"
- 全局替换整个文件的文本:vim
:%s/old/new/g # 替换整个文件中的所有 "old" 为 "new" :%s/old/new/gc # 全局替换,并在每次替换前确认
7. 多文件和多窗口操作
Vim 支持同时编辑多个文件和窗口,适合多任务操作。
打开多个文件
- 命令:
vim file1 file2
- 在文件之间切换:
:n
:切换到下一个文件:prev
:切换到上一个文件:first
/:last
:切换到第一个/最后一个文件
分屏操作
水平分屏:
:split filename
或:sp filename
垂直分屏:
:vsplit filename
或:vsp filename
分屏切换:
Ctrl + w w
:在分屏间切换Ctrl + w h
、j
、k
、l
:向左、下、上、右切换分屏:q
:关闭当前分屏
8. 文本缩进和格式调整
自动缩进
- 缩进选定文本:在可视模式中选中文本,然后按
>
进行缩进,按<
反缩进。 - 设置自动缩进:vim
:set autoindent # 自动缩进 :set shiftwidth=4 # 设置缩进宽度为4 :set tabstop=4 # 设置Tab为4个空格
格式化代码
- 选中代码块并按
=
自动格式化选中的代码块。