了解 Linux 中不同类型的文本编辑器

文本编辑器是一种应用程序软件,通常与操作系统捆绑在一起

编辑器的功能

  1. 创建文件
  2. 打开文件
  3. 复制和黏贴文本
  4. 搜索文本
  5. 处理数据

适用于 Linux 的编辑器

  • Vi(可视化编辑器)
  • Vim(可视化编辑器增强版)
  • Emacs(编辑宏编辑器)
  • Sed(流行编辑器)
  • Ed(行为编辑器)
  • Red(受限的 Ed 编辑器)
  • Joe(Joe’s Own 的编辑器)
  • Rjoe(受限的 Joe 编辑器)
  • Pico(pine composer)
  • Jstar(与 WordStar 兼容的 joe 编辑器版本)

解释 Vi 文本编辑器

可以使用各种命令在 vim 编辑器中执行操作,这些命令可以分为以下类别

  • 常用命令
  • 光标移动命令
  • 高级读取和保存命令
  • 插入和替换命令
  • 词移动命令
  • 删除和修改命令
  • 复制行的命令
  • 样式查找命令

开始使用 Vi

vi niit.txt
:如果 niit.txt 文件存在,就进入命令模式
:如果不存在,就先创建,再进入命令模式
命令模式:按键 ESC,由输入模式进入命令模式
特点:在文件的最下方,什么都不显示或者显示文件基本信息
在这里插入图片描述

输入模式:按键 a A i L o O r R,由命令模式进入输入模式
特点:在文件的最下方出现 --INSERT-- --REPALCE--
在这里插入图片描述
a:在光标下一个字符之前插入文本
A:在光标所在的航模插入文本
i:在光标上一个字符之前插入文本
I:在光标的行首插入文本
o:在光标所在的行下插入一行文本
O:在光标所在的行上插入一行文本
r:修改当前光标所在的字符
R:替换文本

退出模式:按键 shift + :,由命令模式进入退出模式
特点:文件的最下方出现 :
w:保存
q:退出
! :强制
wq:保存且退出
在这里插入图片描述

常用命令

命令操作
h将光标移动到上一个字符
l将光标移动到下一个字符
k将光标上移动一行
j将光标下移动一行
x删除当前光标位置
dd删除行
:e < filename > + Enter打开特定文件,如果文件不存在就创建打开,如果存在就打开
:w < filename > + Enter写入不同文件,如果文件不存在就创建打开,并且将 niit.txt 内容复制到 qdu.txt 中,如果存在,将 niit.txt 内容覆盖到 qdu.txt 中的文本内容
:w! < filename > + Enter强制写入另一个文件
:wq + Enter保存所有更改并退出
:w + Enter保存文件
:q! + Enter不保存更改退出

Vi 中的光标移动命令

命令操作
Ctrl + d 或者 D向下滚动半个屏幕
Ctrl + u 或者 U向上滚动半个屏幕
Ctrl + F向前翻一页
Ctrl + B向后翻一页
nG移动到第 n 行
0移动到首行
$移动到行尾
H移动到屏幕的第一行
M移动到屏幕的中间行
L移动到屏幕的最后一行

插入和替换命令

命令操作
a附加于当前字符后
A附加于行末
i在当前字符前插入
I在行首插入
o在下面插入空白行并允许插入
O在上面插入空白行并允许插入
rx用字符 x 代替当前字符

Linux 还支持在键入单词的初始字符时自动显示该单词(如果该单词已经存在与文件中)Ctrl + p 完成

单吃移动命令

命令操作
W or w移动到下一个词
B or b移动到上一个词
E or e移动到词尾

删除和修改命令

命令操作
dw删除词
dd删除行
cw更改词
cc更改当前行
x删除当前光标位置的字符
j连接行
u撤销上次更改
U撤销当前行的所有更改
.(dot)重复上次更改

复制行的命令

命令操作
yiw复制当前单词
yw复制当前光标位置到词末
yy复制当前行
P将拉出的文本放置在当前光标之后。此命令类似于 Windows 中的黏贴操作
p将拉出的文本放置在当前光标位置前

搜索命令

/:向下搜索
?:向上搜索

命令操作
/<word>搜索整个单词
n搜索下一个出现的位置
N搜索上一个出现的位置

搜索时,默认是区分大小写的,
:set ic:不区分大小写
:set noic:关闭不区分大小写(开启区分大小写)

样式查找指令

命令操作
fx在当前行上的当前光标位置后查找字符 x
Fx在当前行的当前光标位置前查找字符 x
/pattern + Enter查找包含的给定样式的下一行
?pattern + Enter查找包含的给定样式的上一行

配置 Vi、

  • set
  • map
  • ab

set 命令

vi 编辑器的环境是通过其变量设置俩定义的。
set 命令用于指定 vi 编辑器环境的环境变量值。
set 命令接受 vi 编辑器环境变量并将它们的值作为参数,相应地更改编辑器的行为。

命令功能
:set nu显示行号
:set ic关闭区分大小写功能(默认是区分大小写)

map 命令

map 命名的语法是:
:map < 快捷键 > < 快捷键所映射的按键序列 >

ab 命令

ab 命令,可以将特定字符串的缩写
ab minglde语法是
:ab < string > < string >

例如:将字符串 Hello World 缩写为 hw
:ab hw Hello World
取消缩写命令
:unab hw
查看使用 ab 命令创建的缩写列表
:ab

解释 Vim 编辑器

Vim 是 Vi 的改进版本,Vim 几乎包含了 Vi 的所有命令请添加图片描述
并不是所有的 Unix 和 Linux 变体,都安装 Vim
如我们使用的变体没有安装 Vim,则需要我们自行安装
但是 Unix 和 Linux 的所有变体,都安装了vi

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐