大家好,今天小编来为大家解答以下的问题,关于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
当前行。
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
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/139440.html
用户评论
凉城°
刚开始学vi编辑器的时候感觉很难上手,毕竟是用指令操作文本,不像图形界面那么直观。但是坚持练习之后发现其实挺强大的,尤其是当你只会在终端下工作的时候! 现在大部分用到的工具都可以通过VI进行操作,非常高效!
有12位网友表示赞同!
全网暗恋者
这篇文章介绍的VI命令挺清晰的,对于初学者来说很有帮助。我之前一直是在使用GUI,但最近想挑战一下自己,学习一些Linux的命令行工具。没想到VI这么强大啊,以后可以用它来编辑配置文件啦!
有12位网友表示赞同!
等量代换
VI的使用感觉越来越顺手了。这篇文章说的没错,它确实是一个简洁高效的文本编辑器,尤其是那些需要频繁修改代码的人来说简直太合适了! 我最近在学习C语言,用VI写C代码效率很高。
有5位网友表示赞同!
长裙绿衣
文章介绍的内容基本都是初级的命令操作,对熟练使用的VI用户来说没什么帮助。希望作者可以再深入一点,探讨一些高级的编辑技巧和策略,比如宏录制、正则表达式匹配等等。
有16位网友表示赞同!
炙年
我一直觉得用鼠标操作比键盘操作更容易上手,虽然VI很强大,但我还是更习惯图形界面编辑文本。也许这是一种个人喜好吧?
有7位网友表示赞同!
你的眸中有星辰
学习VI真是一件很有挑战的事情!这篇博文的介绍很有帮助,让我更加了解了VI的强大功能,比如回溯、撤销和复制粘贴等操作。现在我尝试使用VI来编写简单的shell脚本,感受一下命令行编程的魅力。
有20位网友表示赞同!
泡泡龙
VI确实是一个老牌的文件编辑器,但它还是有不少优缺点的存在啊。例如它的交互式模式相对来说比较复杂,需要花费时间学习,而一旦掌握了它的操作方法,却能达到极高的效率。
有5位网友表示赞同!
像从了良
我发现Linux操作系统中许多核心操作都是通过VI命令完成的,包括查看文件、编辑配置文件等等。因此要想在LINUX系统中精通一些常用的功能,学习VI几乎是一个必不可少的环节。
有5位网友表示赞同!
歇火
这个标题说得很到位了! VI的确是Linux中最基础却又最重要的命令行工具之一。我最近一直在尝试用VI替换传统的图形界面编辑器, 希望能提高自己的效率。
有19位网友表示赞同!
矜暮
我还真没有好好学习过VI编辑器的使用方法,看到这篇博文就想去实践一下了! 感觉这是一种很实用的技能,可以让我更好地理解Linux操作系统的工作机制。
有11位网友表示赞同!