Linux VI 命令行

一、背景介绍二、为什么我们应该学习 vi?只有一个理由,全程键盘操作,摆脱图形界面的繁琐,摆脱鼠标的束缚 !!!三、启动和停止VI3.1、要想启动 vi,只要简

大家好,今天小编来为大家解答以下的问题,关于Linux VI 命令行,这个很多人还不知道,现在让我们一起来看看吧!

原因只有一个,全键盘操作,摆脱繁琐的图形界面,摆脱鼠标的束缚!

3. 启动和停止VI

3.1.要启动vi,只需输入以下命令:

启动vi

3.1.2 启动vi显示界面如下

启动vi后的显示界面

3.1.3 退出vi并输入:q(注意冒号是命令的一部分)

退出vi

3.1.4 如果由于某种原因,vi无法退出(通常是因为我们修改了文件但没有保存文件)。通过在命令中添加感叹号,我们可以告诉vi 我们确实要退出vi。这称为强制退出。

q 后添加感叹号以强制退出。

4. 编辑模式

4.1.启动vi,这次给vi传递一个不存在的文件名。这也是使用vi 创建新文件的方式。

vi 创建新文件

4.2.使用vi vi_test.txt命令后,按回车键进入vi_test.txt文件。

输入文件

5.插入模式

为了向文件添加文本,首先我们必须进入插入模式。按“i”按钮进入插入模式。之后,如果vi 在高级模式下运行,我们应该在屏幕底部看到以下行(这不会出现在vi 兼容模式下):

按i键后,出现INSERT,表示进入插入模式。

5.1.进入插入模式后,现在我们尝试输入文本

输入文字

5.2.要保存文本,请先按Esc 退出插入模式。然后按:w保存。记住不要省略冒号。当然也可以直接按:wq保存退出。

编辑文件后,保存并退出

6.键盘操作技巧(移动光标)

6.1.在vi命令模式下,vi提供了大量的移动命令。下表显示了一些光标移动键

按钮

移动光标

l 或右箭头

向右移动一个字符

h 或向左箭头

向左移动一个字符

j 或向下箭头

向下移动一行

k 或向上箭头

上移一行

0(零键)

移至当前行的开头。

^

移至当前行的第一个非空字符。

$

移动到当前行的末尾。

w

移至下一个单词或标点符号的开头。

移至下一个单词的开头,忽略标点符号。

移至上一个单词或标点符号的开头。

移至上一个单词的开头,忽略标点符号。

Ctrl-f 或Page Down

向下翻一页

Ctrl-b 或Page Up

向上翻一页

数字G

移至行号。例如,1G 移动到文件的第一行。

G

移至文件末尾。

6.2.撤消修改

我们按“u”键。在命令模式下,vi 将撤消您所做的最后修改。当我们尝试执行一些基本的编辑命令时,这会派上用场。

6.3.附加文本

如果我们想在这句话的末尾添加一些文本,我们会发现i 命令无法完成这项工作,因为我们无法将光标移动到行尾。 vi 提供了一个用于附加文本的命令,明智地命名为“a”命令。如果我们将光标移动到行尾并输入“a”,光标将越过行尾,vi 将进入插入模式。这允许我们添加更多文本:

直接将光标移动到行尾

6.4.我们几乎总是想将文本附加到行尾,因此vi 提供了移动到当前行尾并添加文本的快捷方式。这是“A”命令。首先,使用“0”(零)命令将光标移动到行首。现在我们输入“A”,

6.5.开一排。插入文本的另一种方法是“打开”一行。这将在两个现有行之间插入一个空白行并进入插入模式

命令

开行

在当前行下方打开一行。

在当前行上方打开一行。

7.删除文本

vi 提供了多种删除文本的方法,所有方法都涉及一两次击键。 x 键将删除光标位置处的一个字符。您可以在x 命令前添加一个数字,表示要删除的字符数。 d 按钮用途更广。与x 命令类似,d 命令前面可以跟一个数字来指定要执行的删除次数。另外,d命令后面总是跟着一个move命令来控制删除的范围。

命令

删除的文本

x

当前角色

3x

当前字符和接下来的两个字符。

DD

当前行。

Linux VI 命令行

5日

当前行和接下来的四行文本。

dW

从光标位置开始到下一个单词的开头。

d$

从光标位置到当前行的末尾。

d0

从光标位置开始到当前行的行首。

d^

从光标位置开始,到文本行中的第一个非空白字符结束。

dG

从当前行到文件末尾。

d20G

从文件的当前行到第20 行。

命令

yy

当前行。

5年

当前行和接下来的四行文本。

wx

从当前光标位置到下一个单词的开头。

y$

从当前光标位置到当前行的末尾。

y0

从当前光标位置到行首。

y^

从当前光标位置到文本行的第一个非空白字符。

YG

从当前行到文件末尾。

y20G

从文件的当前行到第20 行。

9. 粘贴文本

执行小p 命令将剪贴板中的文本粘贴到光标位置之后,或执行大P 命令将文本粘贴到光标之前。

10. 连接线

vi 提供了一个特定的命令,大写的J(不要与小写的j 混淆,它用于移动光标)来连接行。

源文件

使用大写J 连接第三行和第四行。

连接命令J

11. 找到一条线

f 命令搜索一行并将光标移动到下一个指定字符。例如,命令fa 会将光标定位在同一行中下一个出现的“a”字符上。在一行中执行字符搜索后,通过输入分号重复搜索。

同时按fa表查找第一个出现的字符。

12. 搜索整个文件

要将光标移动到下一个出现的单词或短语,请使用/命令。当您输入/命令时,屏幕底部会出现一个“/”字符。接下来,输入您要查找的单词或短语后,按Enter。光标将移动到包含搜索字符串的下一个位置。使用n 命令重复先前的搜索

按/输入要搜索的字符并按Enter

13. 全局查找和替换

vi 使用ex 命令执行查找和替换操作(在vi 中称为“替换”)。我们输入以下命令:

:%s/ds/DS/g

让我们将此命令分解为各个部分,看看每个部分的含义:

入口

意义

:

冒号字符运行ex 命令。

%

指定要操作的行数。 % 是一个快捷方式,表示从第一行到最后一行。另外,操作范围也可以替换为1,5(因为我们的文件只有5行文本),或者1,$,意思是“从文件的第一行到最后一行”。如果文本行省略了范围,则操作仅对当前行生效。

s

指定操作。在这种情况下,请替换(查找并替换)。

/线/线

查找类型和替代文本。

这意味着“全局”,意味着对一行文本中的所有匹配字符串执行查找和替换操作。如果省略g,则仅替换每行文本中的第一个匹配字符串。

执行命令

执行命令之前

执行命令后

我们还可以指定一个需要用户确认的替换命令。通过在命令末尾添加“c”字符来完成此替换命令

命令:%s/DS/ds/gc 会将我们的文件恢复到以前的外观;但是,在执行每个替换命令之前,vi 会停止并要求我们使用以下消息确认替换:

替换为行(y/n/a/q/l/^E/^Y)?钥匙

行为

y

执行更换

n

跳过此匹配实例

一个

对此字符串和所有后续匹配字符串执行替换。

q 或esc

退出替换操作。

执行此替换并退出。 l 是“最后”的缩写。

Ctrl-e、Ctrl-y

用户评论

Linux VI 命令行
凉城°

刚开始学vi编辑器的时候感觉很难上手,毕竟是用指令操作文本,不像图形界面那么直观。但是坚持练习之后发现其实挺强大的,尤其是当你只会在终端下工作的时候! 现在大部分用到的工具都可以通过VI进行操作,非常高效!

    有12位网友表示赞同!

Linux VI 命令行
全网暗恋者

这篇文章介绍的VI命令挺清晰的,对于初学者来说很有帮助。我之前一直是在使用GUI,但最近想挑战一下自己,学习一些Linux的命令行工具。没想到VI这么强大啊,以后可以用它来编辑配置文件啦!

    有12位网友表示赞同!

Linux VI 命令行
等量代换

VI的使用感觉越来越顺手了。这篇文章说的没错,它确实是一个简洁高效的文本编辑器,尤其是那些需要频繁修改代码的人来说简直太合适了! 我最近在学习C语言,用VI写C代码效率很高。

    有5位网友表示赞同!

Linux VI 命令行
长裙绿衣

文章介绍的内容基本都是初级的命令操作,对熟练使用的VI用户来说没什么帮助。希望作者可以再深入一点,探讨一些高级的编辑技巧和策略,比如宏录制、正则表达式匹配等等。

    有16位网友表示赞同!

Linux VI 命令行
炙年

我一直觉得用鼠标操作比键盘操作更容易上手,虽然VI很强大,但我还是更习惯图形界面编辑文本。也许这是一种个人喜好吧?

    有7位网友表示赞同!

Linux VI 命令行
你的眸中有星辰

学习VI真是一件很有挑战的事情!这篇博文的介绍很有帮助,让我更加了解了VI的强大功能,比如回溯、撤销和复制粘贴等操作。现在我尝试使用VI来编写简单的shell脚本,感受一下命令行编程的魅力。

    有20位网友表示赞同!

Linux VI 命令行
泡泡龙

VI确实是一个老牌的文件编辑器,但它还是有不少优缺点的存在啊。例如它的交互式模式相对来说比较复杂,需要花费时间学习,而一旦掌握了它的操作方法,却能达到极高的效率。

    有5位网友表示赞同!

Linux VI 命令行
像从了良

我发现Linux操作系统中许多核心操作都是通过VI命令完成的,包括查看文件、编辑配置文件等等。因此要想在LINUX系统中精通一些常用的功能,学习VI几乎是一个必不可少的环节。

    有5位网友表示赞同!

Linux VI 命令行
歇火

这个标题说得很到位了! VI的确是Linux中最基础却又最重要的命令行工具之一。我最近一直在尝试用VI替换传统的图形界面编辑器, 希望能提高自己的效率。

    有19位网友表示赞同!

Linux VI 命令行
矜暮

我还真没有好好学习过VI编辑器的使用方法,看到这篇博文就想去实践一下了! 感觉这是一种很实用的技能,可以让我更好地理解Linux操作系统的工作机制。

    有11位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/139440.html

(0)
小su的头像小su
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注