目录
一. Linux下的软件
1.1 软件安装的三种方法
1.2 采用yum安装软件
1.3 yum源的问题
二. vim开发工具的使用
2.1 vim的三种基本模式
2.2 命令模式下vim的常用指令
2.2.1 定位相关指令
2.2.2 光标移动相关指令
2.2.3 插入相关指令
2.2.4 复制粘贴相关指令
2.2.5 替换和更改相关指令
2.2.6 其他指令
2.3 底行模式下vim的常用指令
2.3 vim的多文件操作
2.4 vim编译和运行程序
一. Linux下的软件
1.1 软件安装的三种方法
- 源代码安装 -- 安装困难,不适用于普通用户
- rpm安装 -- rmp相对于Linux下的安装包,需要用户自身去寻找安装源、安装版本,解决安装依赖问题,安装难度依旧较大。
- yum安装 -- 解决了安装源、安装版本和安装依赖的问题。
yum,类似于手机上的应用商店。
1.2 采用yum安装软件
以lrzsz软件(完成Windows和Liunx之间的文件传输)为例,演示如何采用yum安装和卸载软件。
- rz -- 从Winowds向Linux传输文件。
- sz 文件名 -- 将Windows下的文件传输到Linux。
三条命令查找并安装软件:
- yum list -- 打印所有可安装软件列表。
- yum list | grep 软件名(部分) -- 查找要安装的软件。
- yum -y install 软件名 -- 安装软件,这里-y选项是不询问是否安装,直接强制安装。
注意:如果使用yum安装已经存在的软件,那么系统会输出Nothing to do。
- 软件删除:yum -y remove 软件名
1.3 yum源的问题
我们在使用yum下载软件时,是通过系统内配置的yum源,去查找软件的下载地址,通过网络从远端服务器拉取下载资源,然后下载相应的软件。
- yum源:/etc/yum.repos.d/
通过指令 ls -l /etc/yum.repos.d/,可以查看/etc/yum.repos.d/目录下的内容如图1.2所示,其中:
- CentOS-Base.repo -- 官方yum源。
- CentOS-Epel.repo -- 扩展yum源。
扩展yum源有时候需要用户自行安装:
- yum -y install epel-release
由于Linux为国外开发的操作系统,因此内置的yum源一般为国外的链接,在国内使用下载速度会比较慢,可以进行替换,将国外yum源替换为国内的镜像。
- vim /etc/yum.repos.d/CentOS-Base.repo -- 具体yum源的查看(国内镜像/国外)
二. vim开发工具的使用
vim既可以进行文本编译,也可以写代码,甚至可以编译和运行代码,是一款多模式的编辑器。
2.1 vim的三种基本模式
- 命令模式(默认) -- 光标位置的切换、赋值粘贴字符/行、删除和替换字符/行,可以从命令模式进入插入模式和底行模式。
- 插入模式:进行文本编辑,只有在插入模式下才能使用键盘进行文本输入。
- 底行模式:文本的保存和退出、编译代码、运行代码、查找文件内容等。
三种基本模式间切换的快捷键:
- 命令模式 -> 插入模式:i、I、a、A、O、o
- 插入模式 -> 命令模式:ESC
- 命令模式 -> 底行模式:Shift + :
- 底行模式 -> 命令模式:ESC
注意:无法实现底行模式和插入模式的直接切换,必须以命令模式为中介进行切换。
2.2 命令模式下vim的常用指令
2.2.1 定位相关指令
指令 | 功能 |
---|---|
gg | 光标定位到首行 |
Shift + g | 光标定位到最后一行 |
n + Shift + g | 光标定位到第n行 |
Shift + $ | 定位到光标所在行的行末 |
Shift + ^ | 定位到光标所在行的行首 |
2.2.2 光标移动相关指令
指令 | 功能 |
---|---|
h | 光标左移一个字符 |
j | 光标下移一行 |
k | 光标上移一行 |
l | 光标右移一个字符 |
w | 以单词为单位右移或跨行移动 |
b | 以单词为单位左移或跨行移动 |
2.2.3 插入相关指令
在命令模式下输入下标中的指令,实现从命令模式到插入模式的切换。
指令 | 功能 |
---|---|
i | 在光标之前插入 |
I | 在光标所在行行首插入 |
a | 在光标位置之后插入 |
A | 在光标所在行的末尾插入 |
o | 在光标下方新建一行插入 |
O | 在光标上方新建一行插入 |
2.2.4 复制粘贴相关指令
指令 | 功能 |
---|---|
yy | 复制光标所在行 |
(n)yy | 复制从光标所在行开始向下的n行内容 |
p | 粘贴复制内容 |
(n)p | 粘贴n行复制内容 |
(n)dd | 剪切(删除)n行内容 |
2.2.5 替换和更改相关指令
指令 | 功能 |
---|---|
(n)r + 字符 | 更改从光标位置开始的连续n个字符 |
Shift + r | 进入到替换模式 |
(n)x | 删除光标之后的连续n个字符 |
2.2.6 其他指令
指令 | 功能 |
---|---|
Shift + ~ | 快速大小写转换 |
u | 撤回刚才的操作 |
Ctrl + r | 撤回u撤回的操作 |
2.3 底行模式下vim的常用指令
命令模式 -> 底行模式:shift + :
- 保存和退出相关指令:
指令 | 功能 |
---|---|
q | 退出 |
w | 保存 |
wq | 保存并退出 |
q! | 强制退出 |
w! | 强制保存 |
wq! | 强制保存并退出 |
- 搜索和设置相关指令
指令 | 功能 |
---|---|
set nu | 显示行号 |
set nonu | 取消行号显示 |
/ 内容 | 内容搜索 |
2.3 vim的多文件操作
- 在底行模式下,输入指令:vs 文件名 -- 实现多文件操作
- Ctrl + w -- 窗口间的切换
- 光标在哪个窗口,就对哪个窗口操作
2.4 vim编译和运行程序
- ! gcc code.c -- 编译C语言源文件代码
- ! gcc code.c -std=c99 -- 以c99标准编译C语言源文件代码
- ! g++ code.cpp -- 编译C++源代码
- ! g++ code.cpp -std=c++11 -- 以C++11的标准编译C++源代码
- ! ./a.out(可执行程序文件名) -- 运行代码