Linux系统中vi命令的详细解释
学习啦在线学习网 在Linux系统中,vi编辑器是个功能强大的富文本编辑器,那么下面由学习啦小编为大家整理了linux系统中vi命令的详细解释的相关知识,希望对大家有帮助!
Linux系统中vi命令的详细解释
vi命令
学习啦在线学习网 vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能。
vi编辑器支持编辑模式和命令模式,编辑模式下可以完成文本的编辑功能,命令模式下可以完成对文件的操作命令,要正确使用vi编辑器就必须熟练掌握着两种模式的切换。默认情况下,打开vi编辑器后自动进入命令模式。从编辑模式切换到命令模式使用“esc”键,从命令模式切换到编辑模式使用“A”、“a”、“O”、“o”、“I”、“i”键。
vi编辑器提供了丰富的内置命令,有些内置命令使用键盘组合键即可完成,有些内置命令则需要以冒号“:”开头输入。常用内置命令如下:
Ctrl+u:向文件首翻半屏;
学习啦在线学习网 Ctrl+d:向文件尾翻半屏;
Ctrl+f:向文件尾翻一屏;
Ctrl+b:向文件首翻一屏;
Esc:从编辑模式切换到命令模式;
ZZ:命令模式下保存当前文件所做的修改后退出vi;
:行号:光标跳转到指定行的行首;
:$:光标跳转到最后一行的行首;
x或X:删除一个字符,x删除光标后的,而X删除光标前的;
学习啦在线学习网 D:删除从当前光标到光标所在行尾的全部字符;
学习啦在线学习网 dd:删除光标行正行内容;
学习啦在线学习网 ndd:删除当前行及其后n-1行;
学习啦在线学习网 nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字;
p:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的下方;
P:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的上方;
/字符串:文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示;
学习啦在线学习网 ?name:文本查找操作,用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示;
a,bs/F/T:替换文本操作,用于在第a行到第b行之间,将F字符串换成T字符串。其中,“s/”表示进行替换操作;
a:在当前字符后添加文本;
A:在行末添加文本;
学习啦在线学习网 i:在当前字符前插入文本;
学习啦在线学习网 I:在行首插入文本;
学习啦在线学习网 o:在当前行后面插入一空行;
学习啦在线学习网 O:在当前行前面插入一空行;
:wq:在命令模式下,执行存盘退出操作;
学习啦在线学习网 :w:在命令模式下,执行存盘操作;
学习啦在线学习网 :w!:在命令模式下,执行强制存盘操作;
学习啦在线学习网 :q:在命令模式下,执行退出vi操作;
:q!:在命令模式下,执行强制退出vi操作;
:e文件名:在命令模式下,打开并编辑指定名称的文件;
学习啦在线学习网 :n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件;
学习啦在线学习网 :f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例;
学习啦在线学习网 :set number:在命令模式下,用于在最左端显示行号;
:set nonumber:在命令模式下,用于在最左端不显示行号;
语法
学习啦在线学习网 vi(选项)(参数)
选项
+<行号>:从指定行号的行开始先是文本内容;
学习啦在线学习网 -b:以二进制模式打开文件,用于编辑二进制文件和可执行文件;
-c<指令>:在完成对第一个文件编辑任务后,执行给出的指令;
-d:以diff模式打开文件,当多个文件编辑时,显示文件差异部分;
-l:使用lisp模式,打开“lisp”和“showmatch”;
-m:取消写文件功能,重设“write”选项;
学习啦在线学习网 -M:关闭修改功能;
学习啦在线学习网 -n:不实用缓存功能;
-o<文件数目>:指定同时打开指定数目的文件
; -R:以只读方式打开文件;
-s:安静模式,不现实指令的任何错误信息。
参数
文件列表:指定要编辑的文件列表。多个文件之间使用空格分隔开。
Linux系统中vi命令的基本操作
vi的基本操作
a) 进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
$ vi myfile
不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
b) 切换至插入模式(Insert mode)编辑文件
学习啦在线学习网 在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
c) Insert 的切换
您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
d) 退出vi及保存文件
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
学习啦在线学习网 : wq (输入「wq」,存盘并退出vi)
学习啦在线学习网 : q! (输入q!, 不存盘强制退出vi)
3、命令行模式(command mode)功能键
学习啦在线学习网 1). 插入模式
学习啦在线学习网 按「i」切换进入插入模式「insert mode」,按"i"进入插入模式后是从光标当前位置开始输入文件;
学习啦在线学习网 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
学习啦在线学习网 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
2). 从插入模式切换为命令行模式
学习啦在线学习网 按「ESC」键。
学习啦在线学习网 3). 移动光标
vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。
按「ctrl」+「b」:屏幕往"后"移动一页。
按「ctrl」+「f」:屏幕往"前"移动一页。
按「ctrl」+「u」:屏幕往"后"移动半页。
按「ctrl」+「d」:屏幕往"前"移动半页。
按数字「0」:移到文章的开头。
按「G」:移动到文章的最后。
按「$」:移动到光标所在行的"行尾"。
按「^」:移动到光标所在行的"行首"
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
学习啦在线学习网 按「b」:光标回到上个字的开头
学习啦在线学习网 按「#l」:光标移到该行的第#个位置,如:5l,56l。
学习啦在线学习网 4). 删除文字
「x」:每按一次,删除光标所在位置的"后面"一个字符。
学习啦在线学习网 「#x」:例如,「6x」表示删除光标所在位置的"后面"6个字符。
「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符。
「#X」:例如,「20X」表示删除光标所在位置的"前面"20个字符。
「dd」:删除光标所在行。
「#dd」:从光标所在行开始删除#行