(k8s-king-king)vi功能键及应用

举报
yd_254431385 发表于 2023/11/24 13:26:59 2023/11/24
【摘要】 3.1 移动光标Vi可以直接使用键盘上的方向键上下左右移动光标,但正规的Vi命令模式中使用功能键来控制光标的移动。(1)逐字符移动● h:光标向左移动一个字符。● l:光标向右移动一个字符。● j:光标向下移动一个字符。● k:光标向上移动一个字符。在h、l、j、k前面加一个数字n表示光标向左、右、下、上移动n个字符。(2)以单词为单位移动● w:光标移到下一个单词的词首。● e:光标跳至当...

3.1 移动光标

Vi可以直接使用键盘上的方向键上下左右移动光标,但正规的Vi命令模式中使用功能键来控制光标的移动。

(1)逐字符移动

● h:光标向左移动一个字符。

● l:光标向右移动一个字符。

● j:光标向下移动一个字符。

● k:光标向上移动一个字符。

在h、l、j、k前面加一个数字n表示光标向左、右、下、上移动n个字符。

(2)以单词为单位移动

● w:光标移到下一个单词的词首。

● e:光标跳至当前或下一个单词的词尾。

●b:光标跳至当前或上一个单词的词首。

(3)行内跳转

● 0:移动光标到行首。

● ^:移动光标到该行第一个非空白字符。

● $:移动光标到行末。

(4)行间跳转

● G:移动光标到文件的末尾。

● nG:将光标定位到第n行的开头。

● gg:移动光标到文件开头(Vim中有效)。

● n+:将光标下移n行。

● n-:将光标上移n行。

(5)翻屏命令

● Ctrl+F:向下翻一屏。

● Ctrl+B:向上翻一屏。

● Ctrl+D:向下翻半屏。

● Ctrl+U:向上翻半屏。

3.2 文本编辑操作

(1)命令模式下的删除操作命令

● x:删除光标所在处的单个字符。

● nx:n是具体数字,表示删除光标所在处及向后的共n个字符。

● X:删除光标所在位置的前一个字符。

● nX:删除光标所在位置前面的n个字符。

● dd:删除光标所在行。

● ndd:从光标所在行开始删除n行。

(2)复制命令

● yy:复制当前光标所在行。

● nyy(n表示数字):复制从当前光标所在行以下的n行。

● yw:复制光标所在之处到字尾的字符。

● nyw或ynw(n表示数字):复制光标所在处开始的n个字。

(3)粘贴命令

● p:如果复制的为整行内容,则粘贴到光标所在行的下方,如果复制的内容为非整行,则粘贴至光标所在字符的后面。

● P:如果复制的为整行内容,则粘贴到光标所在行的上方,如果复制的内容为非整行,则粘贴至光标所在字符的前面。

注意:所有与“y有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

(4)替换、更改

● r:单字符替换,替换光标所在处的字符。

● R:替换光标所到之处的字符,直到按Esc键为止。

● cw:更改光标所在处的字到字尾处,先删除内容再转换为输入模式。

(5) 撤销编辑操作

● u:撤销前一次编辑操作,一直按“u”,可以撤销到原始修改状态。

● Ctrl+R:撤销最近一次撤销操作,可以一直按该组合键达到最新的改变。

3.3 末行模式下的命令

(1)跳转到文件中第n行

输入行号n,按Enter键,即可跳转到第n行。

(2)删除、复制命令

末行模式下删除命令d可以和位置符号组合使用。

删除m到n行的所有内容:


m,nd

例如, 5,10d 表示删除5到10行所有内容。

删除光标所在行内容:


.d  

该命令作用等同于命令行模式下的dd命令。

复制m到n行的所有内容:


m,ny

例如, 5,10y 表示复制5到10行所有内容。

复制当前位置向下n行:


+ny 

(3)查找字符

● /关键字:先按“/”键,在输入要查找的字符,查找过程按“n”自上而下查找下一个,按“N”自下而上反向查找下一个。

● ?关键字:先按“?”键,在输入要查找的字符,查找过程按“n”自下而上查找下一个,按“N”自上而下反向查找下一个。

(4)替换命令

 s/old_str/new_str:表示用new_str/替换当前行中第一个匹配的old_str。

 s/old_str/new_str/g:表示用new_str/替换当前行中所有匹配的old_str。

● m,ns/old_str/new_str/gi:用new_str/替换两个m到n行区域内所有old_str。

m,n表示两个行号确定的范围,例如,3,5表示第3~5行;1,$或%表示全文范围。其中,g表示全局替换;i表示忽略大小写,可选项。

(5)显示或取消行号

● et nu:在文件中每一行前面列出行号。

● et nonu:取消显示行号。

(6)显示忽略或区分字符大小写

● et ic:忽略大小写。

● et noignorecase:区分大小写。

(7)设定自动缩进

● set ai(set autoindent):设置自动缩进。

● set noai:取消自动缩进。

(8)查找到的文本高亮显示

● set hlsearch:高亮显示搜索到的文本。

● set nohlsearch:取消高亮显示搜索到的文本。

(9)语法加亮

● syntax on:打开Vi编辑器的语法加亮功能,编辑器会高亮显示文件中的关键字,方便编程使用。

● systax off:关闭Vi编辑器语法高亮功能,默认情况下该功能是关闭的。

(10)与Shell交互

末行模式下输入 ! command (command为具体命令)。

例如,输入 ! ls /etc/ 命令将会列出/etc目录下所有文件及目录,按Enter键后即可回到Vi编辑器。

3.4 多个文件操作

(1)打开多个文件,例如:


vi  file1 file2 file3

(2)多文件间切换

● :next:切换到下一个文件。

● :prev:切换到上一个文件。

● :last:切换到最后一个文件。

● :first:切换到第一个文件。

● :qa:全部退出。

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。