侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux vi命令教程:高效编辑技巧全覆盖(附实例详解和注意事项)

在Linux操作系统中,文本编辑是常见的任务之一。vi是一个功能强大的文本编辑器,不仅在Linux中广泛使用,而且在UNIX系统中也非常流行。它使用键盘快捷键而非鼠标,允许用户快速编辑文本。接下来,我们将详细介绍vi命令的使用方法、适用的Linux版本、基本语法、常用选项和参数、实例详解、注意事项,并提供一些高级技巧。

Linux vi命令介绍

vi(Visual Interface的缩写),是一种模态文本编辑器,用于创建和修改文本文件。vi编辑器有两种工作模式:命令模式和插入模式。命令模式下可以执行删除、复制、粘贴等操作,而插入模式则用于输入文本。

Linux vi命令适用的Linux版本

vi编辑器几乎在所有的Linux发行版和UNIX系统中都是可用的。如果系统中没有预装vi,您可以使用以下命令安装:

# 基于apt的发行版(如Debian、Ubuntu、Raspbian、Kali Linux等)
sudo apt-get update && sudo apt-get install vim

# 基于yum的发行版(如RedHat,CentOS 7等)
sudo yum update && sudo yum install vim

# 基于dnf的发行版(如Fedora,CentOS 8等)
sudo dnf update && sudo dnf install vim

# 基于apk的发行版(如Alpine Linux)
sudo apk add --update vim

# 基于pacman的发行版(如Arch Linux)
sudo pacman -Syu && sudo pacman -S vim

# 基于zypper的发行版(如openSUSE)
sudo zypper ref && sudo zypper in vim

# 基于pkg的FreeBSD发行版
sudo pkg update && sudo pkg install vim

# 基于pkg的OS X/macOS发行版
brew update && brew install vim

Linux vi命令的基本语法

要启动vi编辑器并打开文件,其基本语法格式如下:

vi [options] [file]

Linux vi命令的常用选项或参数说明

选项/参数描述
+[num]打开文件时,将光标移到文件中的第[num]行
+/[string]打开文件时,将光标移到第一次出现[string]的地方
-R以只读模式打开文件
-r恢复由于异常崩溃而未保存的文件

Linux vi命令实例详解

实例1:打开文件

[linux@bashcommandnotfound.cn ~]$ vi example.txt

这个命令会用vi编辑器打开名为example.txt的文件。如果文件不存在,vi会自动创建一个新文件。

实例2:跳转到文件指定行

[linux@bashcommandnotfound.cn ~]$ vi +10 example.txt

此命令打开example.txt文件,并将光标移动到第10行。

实例3:查找特定字符串并跳转

[linux@bashcommandnotfound.cn ~]$ vi +/search_string example.txt

在打开example.txt文件时,将光标移动到包含search_string的第一个位置。

实例4:以只读模式打开文件

[linux@bashcommandnotfound.cn ~]$ vi -R example.txt

这个命令以只读模式打开example.txt,防止对文件内容的修改。

实例5:恢复由于系统崩溃而未保存的文件

[linux@bashcommandnotfound.cn ~]$ vi -r example.txt

如果你的系统崩溃导致example.txt没有正确保存,使用这个命令可以尝试恢复文件。

实例6:在文件中搜索字符串

[linux@bashcommandnotfound.cn ~]$ vi example.txt

在打开文件后,在命令模式下输入/search_string,将会在文本中搜索search_string。按n可以跳转到下一个匹配项,按N可以跳转到前一个匹配项。

实例7:替换文本

打开vi编辑器后,在命令模式下输入:%s/old/new/g可以将文件中所有的old字符串替换为new

实例8:复制、剪切和粘贴文本

在命令模式下,可以使用以下命令进行复制、剪切和粘贴操作:

  • yy:复制当前行。
  • dd:剪切当前行。
  • p:在当前光标位置粘贴。

例如,复制当前行然后粘贴到下一行:

[linux@bashcommandnotfound.cn ~]$ vi example.txt

在命令模式下输入yy然后输入p

实例9:撤销和重做

vi中,您可以使用以下命令来撤销和重做编辑:

  • u:撤销上一次操作。
  • CTRL+R:重做上一次被撤销的操作。

实例10:保存更改并退出

要保存对文件所做的更改并退出vi,可以在命令模式下输入:wq

[linux@bashcommandnotfound.cn ~]$ vi example.txt

在完成编辑后,在命令模式下输入:wq

实例11:不保存更改并退出

如果想要退出编辑器并且不保存对文件所做的更改,可以在命令模式下输入:q!

[linux@bashcommandnotfound.cn ~]$ vi example.txt

在命令模式下输入:q!

实例12:设置行号显示

vi编辑时,显示行号可以帮助定位。在命令模式下输入:set number可以显示行号。

实例13:删除单个字符

在命令模式下,将光标移动到想要删除的字符上,然后按x键可以删除光标下的字符。

实例14:进入插入模式

在命令模式下按i可以进入插入模式,在当前光标位置开始编辑文本。

实例15:在文件末尾添加新内容

在命令模式下按Shift + G将光标移动到文件的最后一行,然后按a进入插入模式,在行尾开始添加新内容。

Linux vi命令的注意事项

  • 在使用vi时,必须熟悉其模态特性,了解何时处于命令模式、何时处于插入模式。
  • 如果您遇到 bash: vi: command not found 的错误,请按照上述方法尝试手动安装。
  • vi在没有保存文件的情况下不允许退出,除非使用强制退出命令:q!
  • 学习vi的键盘快捷键可以大幅提升编辑效率。
0

评论区