vi — Linux 手册页


文章目录

  • vi — Linux 手册页
  • 描述
  • 选项
  • 十种主要用法及其代码示例
  • 1.打开文件:
  • 2.插入文本:
  • 3.保存并退出:
  • 4.删除一行:
  • 5.复制和粘贴行:
  • 6.查找和替换文本:
  • 7.切换到命令行模式:
  • 8.移动光标:
  • 9.撤销上一步操作:
  • 10.退出而不保存:
  • 快捷大全
  • 移动光标:
  • 基础编辑:
  • 查找:
  • 替换:
  • 行操作:
  • 块操作:
  • 折叠:
  • 其他:
  • 其他类似命令
  • 详细区别
  • 详细区别
  • 官方链接


描述

vi 是一种经典的文本编辑器,广泛用于 Unix 和 Linux 系统中。它提供了一个命令行界面,可以对文本进行编辑和操作。

vi 编辑器最早由 Bill Joy 开发,并在 1976 年发布。它是 Unix 系统上最早的文本编辑器之一,成为后来许多其他编辑器的基础。

选项

适用于 vi 命令的主要选项有:

选项

描述

-R

以只读模式打开文件,防止意外修改

-w

强制以只写模式打开文件,即使没有写权限

-n

不使用备份文件,不创建备份文件

-c

在启动时执行指定的 Ex 命令

十种主要用法及其代码示例

以下是 vi 编辑器的十种常见用法及相应的代码示例:

1.打开文件:

vi filename

2.插入文本:

i
Text to insert
<ESC>

3.保存并退出:

:wq

4.删除一行:

dd

5.复制和粘贴行:

yy
p

6.查找和替换文本:

:%s/old/new/g

7.切换到命令行模式:

:

8.移动光标:

h, j, k, l
h:左移
j:下移
k:上移
l:右移

9.撤销上一步操作:

u

10.退出而不保存:

:q!

快捷大全

移动光标:

h: 向左移动光标。
j: 向下移动光标。
k: 向上移动光标。
l: 向右移动光标。
0: 移动到行首。
: 移动到行尾。
G: 移动到文件末尾。
g: 移动到文件开头。

基础编辑:

x: 剪切当前字符。
X: 剪切当前字符的前一个字符。
d: 删除当前字符。
D: 删除当前字符的前一个字符。
c: 更改当前字符。
C: 更改当前字符的前一个字符。
v: 选择模式,然后可以用 hjkl 移动光标来选择文本。
V: 选择模式,与 v 类似,但会选中光标经过的完整文本块。
p: 粘贴剪切板中的内容。
P: 粘贴剪切板中的内容,并自动切换到插入模式。

查找:

/: 进入查找模式。
n: 查找下一个匹配的文本。
N: 查找上一个匹配的文本。

替换:

r: 替换当前字符。
R: 替换当前行中的文本。

行操作:

yy: 复制当前行。
Y: 复制当前行,并自动切换到插入模式。
dd: 删除当前行。
D: 删除当前行,并自动切换到插入模式。
u: 撤销操作。
Ctrl + r: 重做撤销的操作。

块操作:

ctrl + v: 进入可视块模式。
V: 选择整个块。
^: 移动到块的行首。
: 移动到块的行尾。
gU: 转换块为大写。
gu: 转换块为小写。

折叠:

zc: 折叠当前块。
zo: 展开当前块。
zm: 折叠所有块。
zn: 展开所有块。

其他:

Ctrl + s: 保存文件。
Ctrl + w: 关闭当前窗口。
Ctrl + q: 退出Vim。

其他类似命令

  • vim:vim 是 vi 的改进版本,增加了许多新特性和改进,如语法高亮、多级撤销、插件支持等。
  • nano:nano 是一个简单易用的文本编辑器,适合新手使用。

详细区别

vi 和 vim 都是文本编辑器,但它们之间存在一些区别。主要区别包括:

  • vi 是最早的版本,提供了基本的文本编辑功能,缺乏一些现代编辑器的特性。
  • vim 是 vi 的改进版本,增加了许多新特性和改进,如语法高亮、多级撤销、插件支持等。
  • vim 在 vi 的基础上进行了性能优化,提供了更好的响应速度和编辑体验。

详细区别

vi 和 vim 都是文本编辑器,但它们之间存在一些区别。主要区别包括:

  • vi 是最早的版本,提供了基本的文本编辑功能,缺乏一些现代编辑器的特性。
  • vim 是 vi 的改进版本,增加了许多新特性和改进,如语法高亮、多级撤销、插件支持等。
  • vim 在 vi 的基础上进行了性能优化,提供了更好的响应速度和编辑体验。

官方链接

vi 官方文档