简介
学习了 Linux 中的基本指令也理解了权限这一概念,但是我们怎么在 Linux 下写代码呢?
本篇就来深入学习 Linux 下的 vim 编辑器;学会在 Linux 下写代码。
软件包管理器
1. 软件包?
在 Linux 下安装软件,通常是下载程序的源码,进行编译获得可执行程序。这样太麻烦了,于是就有了将常用的软件提前编译好做成软件包(相当于 Linux 中安装程序),放在一个服务器上,通过包管理器可以非常方便的获取到这个编译好的软件包,直接安装。yum 就是 Linux 下非常常用的一种包管理器,(应用于 Fedora、RedHat 和 Centos 等发行版本上)。在 Ubuntu 上,只要使用 apt 作为包管理器。
2. Linux 中软件
首先,在 Linux 下安装软件,是在软件包服务器上查找对应软件,下载请求进行安装。
对于 Linux 软件安装这里就不解释那么多了,现在知道 yum 安装软件即可。
Vim 编辑器
首先,先来看一下 Vi/Vim 键盘图。
1. 什么是 Vim 编辑器?
vim 是一款常用的文本编辑器,特别适合在 Linux 和 Unix 操作系统下进行程序开发、系统管理等工作。使用 vim 可以高效地编辑各种类型的文件,例如代码文件、配置文件等。在 Linux 系统中,大部分配置文件都是 ASCII 的纯文本形式存放的,因此使用 vim 进行编辑是非常方便和实用的。
在 Vim 之前呢,使用 Vi ;Vim 可以说是 Vi plus 版本;
Vim 和 Vi 都是多模式编辑器,不同的是 Vim 相比于 Vi 有一些新的特性,语法加亮,可视化操作、不仅可以在终端运行,也可以运行于 windows、macOS 等。
2. vim 的安装
首先输入指令 vim,如果显示下图界面,就表示已经安装过了
这里按 :(Shift + ;),然后输入 q,回车即可退出。
安装 vim:
安装非常简单,直接执行如下指令即可。
yum install -y vim
3. Vim 常见的工作模式
vim 作为一款多模式的编辑器,有着各种各样的模式,共 12 种,但是正常情况学会使用其中的 5 种即可应用于多数开发环境。
正常/普通/命令模式 (Normal mode)
进入 Vim 编辑器的默认模式,该模式下可以控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进⼊ Insert mode 下,或者到 last line mode
插入模式 ((Insert mode)
在命令行模式下,按 i 键进入插入模式;
只有在该模式下,才能进行内容的写入;按 Esc 可以返回命令行模式
底行模式
在命令行模式下,按 :(Shift + ;) 键进入插入模式;
文件保存和退出都在底行模式才能执行,也可以进行文件替换,查找字符串,列出行号等操作。
最经常使用的就是上面这三种模式,其他的模式就不在叙述了;感兴趣可以去学习一下其他模式
命令行模式命令集
命令行的相关指令有很多,这里将其进行简单分类。
移动光标:
先来看光标相关的指令
gg:定为光标至文本最开始
G:定位光标到文本结束
当然,也可以定位到任意行,只需加上 n 即可
$:定位到行结尾
$ 这个符号是键盘上的 Shift + 4(英文下),作用是定位到行结尾位置
^:定位到行开头
^ 这个符号是键盘上的 Shift + 6(英文下),作用是定位到行开头位置
w:以单词为单位,向后移动
有了光标定位行,行结尾和开头;那如果行内容特别长,我们还是需要一个一个移动光标至特定位置;
w 可以加速我们的移动,让我们在一行内移动光标不再是一个字符应该字符移动,而是以单词为单位 (是 Linux 中识别,不是指英语单词)。
b:以单词为单位,向前移动
只有向后移动可不行,b 和 w 相反,b 可以以单词为单位向前移动。(这里就不再演示了)。
复制/剪切 与 粘贴:
yy:复制当前行
yy 可以复制当前行内容,n+yy 可以复制从当前行开始的 n 行内容。
p: 贴到当前行的下一行
p 粘贴,将内容粘贴到当前行的下一行,n + p 可以粘贴 n 行。
dd:剪切当前行
dd 剪切当前行,n + dd 剪切从当前行开始的后面 n 行。
yw:将光标位置到字尾的字符复制到缓冲区
yw 复制光标位置到字尾的字符,n + yw 复制 n 个字符。
撤销:
u:撤销操作,回到上一次操作之前
Ctrl + R:重做操作。
这两个操作比较有意思,u 可以撤销 Ctrl + R 的重做操作,而 Ctrl + R 又可以撤销 u 的撤销操作。
删除:
x:删除光标当前位置的字符
x 可以删除光标当前位置的字符,n + x 可以删除从光标当前位置开始后面 n 个位置的字符。
X:删除光标位置的前一个字符。
X 删除光标位置前,n + X 可以删除光标位置前 n 个字符。
X 就是删除光标位置前的字符,这里就不演示了。
修改:
r:修改光标当前位置的内容
r 可以修改光标当前位置的内容,n + r 可以修改光标从当前位置开始后面 n 个字符的内容。
插入模式命令集
插入模式主要用于内容的写入,命令集相对较少;
命令行模式下,按 i 即可进入插入模式
Shift + 方向键上下移动:移动光标并选择文本
Shift + Insert:粘贴剪切板中的内容
shift + i 将光标快速切换到 当前行行首
shift + a 将光标快速切换到 当前行行尾
shift + o 将光标快速切换到 上一行行首
插入模式下,按 Esc 键即可返回命令行模式。
底行模式命令集
命令行模式下,按 : 即可进入底行模式。
列出/取消行号
set nu:列出行号
set nonu:取消行号
跳转到某一行:
n:在冒号后输⼊⼀个数字,再按回车键就会跳到第 n 行了
查找字符:
/关键字:按 / 键,然后输入想要查找的字符,如果第一次找的不是想要的哪一个,可以按 n 跳转到下一个查找到的内容
?关键字:按 ? 键,然后输入想要查找的字符,如果第一次找的不是想要的哪一个,可以按 n 跳转到下一个查找到的内容
保存和退出:
w:保存文件
q:退出 vim,(q! 强制退出)。
通常情况下 wq 一起使用,保存并退出。
4. vim 使用便利操作
同时打开多个文件
在我们已经使用 vim 打开一个文件时,如果想要再打开另外一个文件,这时就在命令行模式下输入 vs 文件名称即可。
替换模式:快速注释
在 vim 中存在一种模式,可以快速替换文本内容—— 替换模式
现在我们想要注释多行数据,如果在插入模式中一行一行注释就有点太慢了;现在使用替换模式快速注释。
操作如下:
首先在命令行模式下按 Ctrl + v 进入视图模式在视图模式下选择多行(h 左、j 下、k 上、l 右)按 A(Shift+a),进入插入模式注释后,返回命令行模式即可
批量化去注释
能批量化注释,那也要会批量化去注释
首先在命令行模式下按 Ctrl + v 进入视图模式在视图模式下选择多行(h 左、j 下、k 上、l 右)按 d 删除即可
到这里,vim 的基本操作相信你已经了解,并且已经回使用 vim 来编写一段代码了。
使用体验提升:vim 的配置
如果 vim 没有任何配置,使用起来就十分不方便,这里简单配置一下
在目录/etc/下,有一个 vimrc 的文件,这是系统中公共的 vim 配置文件,对所有用户都有效。建议在自己的家目录下配置即可;在家目录下创建配置文件,名.vimrc(一个隐藏文件)。vim .vimrc 打开.vimrc 文件 自己配置 vim
常用配置:
设置语法高亮:syntax on 显示行号:set nu 设置缩进:set shiftwidth=4
如果有实力,可以自己配置;当然也可以使用别人配置好的 vim。


