vi操作
vi使用技巧
vi使用技巧Vi是一款经典的文本编辑器,常被程序员和系统管理员使用。
下面是一些Vi使用的技巧,可以提高编辑效率和操作体验。
1. 模式切换:Vi有两种模式,命令模式和插入模式。
命令模式下可以进行复制、粘贴、删除等操作,插入模式下可以输入文字。
在命令模式按下 "i" 键进入插入模式,在插入模式按下"Esc" 键返回命令模式。
2. 光标移动:使用 "h"、"j"、"k"、"l" 键(分别对应左、下、上、右)可以在命令模式下移动光标。
使用 "gg" 和 "G" 键可以分别跳到文件开头和结尾。
使用 "0" 键可以跳到行首,使用"$" 键可以跳到行尾。
3. 复制和粘贴:在命令模式下将光标移到要复制的地方,按下"yy" 键复制当前行,或者按下数字 + "yy" 键复制多行。
然后将光标移到要粘贴的位置,按下 "p" 键粘贴。
4. 删除和撤销:在命令模式下按下 "dd" 键可以删除当前行,或者按下数字 + "dd" 键删除多行。
按下 "u" 键可以撤销最后的操作。
5. 查找和替换:在命令模式下按下 "/" 键可以进行查找操作,输入要查找的关键词并按下 "Enter" 键。
按下 "n" 键可以跳转到下一个匹配项。
按下 ":%s/old/new/g" 可以替换整个文件中的 "old" 字符串为 "new" 字符串。
6. 多文件编辑:使用 "vi filename" 的方式可以打开指定的文件。
vi操作心得
vi操作心得一、引言在计算机编程与系统管理等领域,vi是一款广泛应用的文本编辑器。
作为一名程序员,我在日常工作中频繁使用vi进行文本编辑和代码编写。
通过长时间的使用和实践,我积累了一些关于vi操作的心得体会,特此总结和分享。
二、灵活运用vi的各种模式vi的操作模式是其独特的特点之一。
vi包含了三种模式:命令模式(Command mode)、插入模式(Insert mode)和底行模式(Last line mode)。
命令模式下,可以通过按键组合进行光标移动、复制粘贴、删除等操作;插入模式下,可以直接输入文本;底行模式下,可以执行保存、退出等操作。
熟练掌握这些模式的切换和使用,可以大大提高编辑效率。
三、掌握vi的常用快捷键vi提供了丰富的快捷键,掌握这些快捷键可以让编辑操作更加高效。
例如,在命令模式下,使用h、j、k、l可以实现光标左移、下移、上移和右移;使用dd可以删除当前行;使用yy可以复制当前行等等。
这些快捷键的灵活运用可以大大减少操作的步骤,提高编辑效率。
四、使用vi的搜索和替换功能在大型文本文件中查找和替换内容是一项常见的任务。
vi提供了强大的搜索和替换功能,可以帮助我们快速定位和修改文本。
在命令模式下,使用/加上要搜索的关键字可以进行向下搜索;使用?加上要搜索的关键字可以进行向上搜索。
替换功能则可以通过:s命令来实现。
灵活运用这些功能,可以提高编辑的准确性和效率。
五、使用vi的标记和跳转功能vi的标记和跳转功能可以帮助我们快速定位到某个位置,特别适用于大型文本文件的编辑。
在命令模式下,使用ma设置标记a,使用`a可以跳转到标记a所在的位置。
通过设置多个标记,可以在文件中快速切换和定位,提高编辑效率。
六、合理使用vi的宏录制功能vi的宏录制功能可以记录一系列操作,然后通过执行宏来批量重复这些操作。
在实际使用中,我发现宏录制功能非常有用。
例如,当需要对某些文本进行重复的编辑时,我们可以先录制一个宏,然后使用宏来批量执行相同的编辑操作,避免重复劳动。
linux文件编辑vi的常见操作命令
linux文件编辑vi的常见操作命令vi是一款常用的文本编辑器,在Linux系统中被广泛使用。
下面将介绍vi的常见操作命令,帮助初学者快速掌握vi的基本使用。
1. 打开文件:使用vi命令加上要编辑的文件名,例如`vi filename`。
如果文件不存在,则会创建一个新文件。
2. 保存文件:在正常模式下,按下`:w`命令可以将文件保存。
如果文件是新创建的,需要指定文件名,例如`:w newfilename`。
3. 退出vi:在正常模式下,输入命令`:q`可以退出vi。
如果文件有未保存的修改,vi会提示保存或放弃修改。
如果想强制退出vi,可以使用命令`:q!`。
4. 插入文本:在正常模式下,按下`i`命令可以进入插入模式,在光标位置前插入文本。
按下`a`命令可以在光标位置后插入文本。
按下`o`命令可以在下一行插入新行并进入插入模式。
5. 删除文本:在正常模式下,按下`x`命令可以删除光标所在位置的字符。
按下`dd`命令可以删除整行。
按下`dw`命令可以删除一个词。
按下`d$`命令可以删除光标位置到行尾的内容。
6. 复制和粘贴文本:在正常模式下,按下`yy`命令可以复制整行。
按下`yw`命令可以复制一个词。
按下`p`命令可以粘贴复制的内容。
7. 撤销和重做:在正常模式下,按下`u`命令可以撤销上一步操作。
按下`Ctrl + r`命令可以重做被撤销的操作。
8. 查找和替换:在正常模式下,按下`/text`命令可以向下查找匹配的文本。
按下`?text`命令可以向上查找匹配的文本。
按下`:%s/old/new/g`命令可以替换全文中的old为new。
9. 移动光标:在正常模式下,按下`h`命令可以将光标向左移动一个字符。
按下`j`命令可以将光标向下移动一行。
按下`k`命令可以将光标向上移动一行。
按下`l`命令可以将光标向右移动一个字符。
按下`gg`命令可以将光标移动到文件开头。
按下`G`命令可以将光标移动到文件末尾。
Vi基本操作
Vi基本操作首先看一下vi的三种模式的转换图:编辑模式下想进入命令模式,则需要先按Esc进入普通模式,这按“:”即进入了命令模式.再命令模式下想进入编辑模式,则需要先按Esc键,然后再按“i,a,o,O,s,S”等进入编辑模式.三种模式的简单说明:1、普通模式:使用Vi打开一个文件后,默认是普通模式,即不能进行输入,仅可以执行一些操作命令;2、编辑模式:在此模式下可以进行常规的输入操作,可以在左下角看到插入的标记“-- 插入--”或“-- INSERT --”;3、命令模式:在命令模式下,主要是执行保存、退出、搜索、替换等操作,则左下角可以看到“:”,并有光标闪烁等待输入命令.普通模式:普通模式转为编辑模式0:在光标所在行的上一行新增一行o:在光标所在行的下一行新增一行a:从当前光标所在的位置的下一个字符开始输入i:在光标所在的位置插入新输入的字符s:删除光标后的一个字符,然后进入插入模式;S:删除光标所在的行,然后进入插入模式;移动h:将光标向左移动一格l:将光标向右移动一格j:将光标向下移动一格k:将光标向上移动一格$:将光标移到当前行的最后面数字0:将光标移到当前行的最前面G :将光标移到最后一行的开头gg:将光标移到首行开头w或W:将光标移到下一个字e或E:将光标移到本单字的最后一个字符;如果光标所在位置为本单子的最后一个字符,则跳到下一个单字的最后一个字符.b:将光标移到本单词的第一个字符;如果光标所在位置为本单词的第一个字符,则跳到上一个单字的第一个字符.翻页ctrl+b:将页面向前卷动一页ctrl+f:将页面向后卷动一页ctrl+u:将光标向前移动半页ctrl+d:将光标向右移动半页ctrl+e:屏幕向下卷动一行,也可以说文章和光标向上卷动一行ctrl+y:屏幕向上卷动一行,也可以说文章和光标向下卷动一行复制文字yy:可将光标目前所在位置的正行复制,复制时不会将文字反白显示nyy:其中n为数字键,表示要复制的行数,若按3yy,则连同光标所在的位置的一行,与下面2行一起复制yw:可复制光标所在位置到整个单词结束的字符nyw:n表示要复制的单词数目,若按3yw,则会将目前光标所在位置到单词结束,以及后面的2个字一起复制p:可将复制的文字粘贴到当前光标所在的位置.若复制的是整行文字,则会将整行内容粘贴在光标所在位置的下一行shift+p 在光标之前粘帖删除文字d:先按d键,放开后按←键,可将光标位置前一个字符删除;按→键,则会将光标位置的字符删除;按↑键,可将当前光标所在的行与前一行一并删除.按↓键,可将当前的光标所在的行与下一行删除.D:可删除一行中光标所在位置之后的所有字符.dd:连续按2次d键可删除光标所在的那一行.dw:将光标停在某个字的第一个字符,按dw键时,会将此字整个删除.如将光标置在某个字中间的字符上,则会将此字中光标后面的字符删除.nd:n为数字,如按3d,再按下↑键,则删除光标上方的3行,再包括本身1行,共删除4行.若按下↓键,则删除光标下方3行再包括本身1行,共4行.ndd:若按3dd键,表示删除当前光标位置的1行和下面的2行. x:删除光标所在位置的字符X:删除光标所在位置的前一个字符,与d+←键一样nx:按4x键,表示删除光标位置后的3个字符和光标本身所在的字符nX:按4X键,表示删除光标位置之前的4个字符不包括光标的字符J:清除光标所处的行与上一行之间的空格,把光标行和上一行接在一起;命令行:欲进入命令模式,需要先进入普通模式,然后输入“:”即可w:保存文件q:退出wq:保存并退出q:不保存,强制退出wq ----强制保存退出x ----- 作用和:wq 一样ZZ ---- 作用和:wq一样,注意Z是大写的,并且不是在命令模式查找及替换文字/或:当药搜索文章中的某一个字符串时,可输入“/”或“”,然后在输入要查找的字符串.例如输入“/kuka”,然后按回车键,vim就会把所有的gz字符串标记起来,并自动将光标移到第一个找到的字符串上.n:将光标移到下一个找到的字符串上N:将光标移到上一个找到的字符串上r:替换光标所在的位置的字符.修改内容不一定要进入insert mode,在normal mode中,只要将光标移到要更改的字符上,然后按R键,就可以输入要查找的字符了.R:连续替换光标所在的位置的字符,按Esc键停止替换cc:按cc键可以替换光标所在的那一行替换字符串:当要将文章中的某一个字符串全部替换时例如将所有的temp替换成tmp,使用“:g/temp/s//tmp/g”或“:1,$stemp/tmp /g”命令,可立刻将所有的“temp”替换成“tmp”字符串.如果不是所有的“temp”字符串都要替换时,可用“:g/temp/s//tmp /gc”或“:1/,$stemp/tmp/gc”命令.则找到每一个“temp”字符串时,都会将整行显示在屏幕的下方,可输入“y”或“n”决定是否要替换.显示光标所在的行数、移到指定的行数^g、^G:按次组合键,则会在最下方处显示光标所造位置的行数,以及文章的总行数.nG 或 ngg:n为数字,若按下20G,则可将光标移到第20行.撤销和还原^u:按此键就是在执行undo命令,可取消前一次的操作^r:按此键就是执行redo命令,可以恢复刚才undo的操作注:^ 代表 ctrl 键.。
vi操作命令大全完整版
v i操作命令大全HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】一vi的操作模式vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。
在输入模式下,用户可输入文本资料。
在指令模式下,可进行删除、修改等各种编辑动作。
在输入模式下,按Esc键切换到指令模式下。
在指令模式下,按输入指令(i、a、o等)进入输入模式。
二进入vi$ vi filename直接键入“vi + 所要编辑的文件名”,即可对指定的文件进行编辑。
如果指定的文件为新文件,则提示:“New file”,否则显示该文件的当前内容。
$ view filename以只读方式打开文件filename三指令模式3.1进入输入模式a 在当前游标之后输入A 在当前行之末输入i 在当前游标之前输入I 在当前行之首输入o 在当前行之下新增一行,并在新增行输入O 在当前行之上新增一行,并在新增行输入输入结束后,按Esc键退出输入模式。
3.2游标移动h 向左移动一个字元 l 向右移动一个字元 j 向下移动一个字元 k 向上移动一个字元 b 左移一个单词,至词首 w 右移一个单词,至词尾 0 移到当前行行首 $ 移到当前行行尾 + 移至下一行的行首 - 移至上一行的行首 H 移至视窗的第一行 M 移至视窗的中间一行 L 移至视窗的最后一行 G 移至该文件的最后一行 nG 移至该文档的第n行 n+ 下移n行 n- 上移n 行3.3视窗移动*<Ctrl> + f 视窗下卷一页 *<Ctrl> + b 视窗上卷一页 <Ctrl> + d 视窗下卷半页<Ctrl> + u 视窗上卷半页 * <Ctrl> + e 视窗下卷一行 * <Ctrl> + y 视窗上卷一行3.4删除操作x 删除游标所在字元 X 删除游标前一字元 dw 从游标当前位置开始向后删除一个单词 db 从游标当前位置开始向前删除一个单词 d0 从行首删除至当前游标位置 d$ 从游标当前位置删除至行尾 dd 删除游标所在行 D 同d$3.5修改操作s 修改游标所在字元,修改完成后按Esc键结束 S 修改整行内容,修改完成后按Esc键结束 r 替换当前游标所在字元 R 进入替换状态,直至按Esc键结束 cw 修改一个单词(从游标位置至词尾) cb 修改一个单词(从词首至游标位置) cc 修改整行内容,完成后按Esc 键结束,同S c0 修改行首至游标位置的内容 c$ 修改游标位置至行尾的内容 ~ 游标所在字元大小写切换3.6指令重复在指令模式中,可在指令前面加入一个数字n,则该指令会重复执行n次。
vi操作
Vi各种快捷方式1、可直接输入的命令ctrl+v:进入列模式编辑;shift+g:跳至文档末尾;v:列模式(移动光标,全选);u:撤销;Ctrl+r:恢复刚才撤销的动作;Ctrl+w+w:切换到下一个窗口(多窗口操作);2、以冒号“:”开头的命令:set nu:显示行号:set nonu:取消行号显示:%s/字符串1/字符串2/g:全局替换,字符串2替换字符串1注:#也可以作为分隔符:%!sort -u:删除重复行:set noh:取消高亮显示3、以斜杠“/”开头的命令/输入字符:查找内容。
4、行缩进在命令格式下,按住shift并连续点击两次>,不进入插入模式即可实现行缩进行操作1、删除行刪除沒有內容的空行:g/^$/d刪除包含有空格組成的空行:g/^\s*$/d以空格或tab開頭到結尾的空行:g/^[ |\t]*$/d:%s/r//g 删除DOS方式的回车^M:%s= *$== 删除行尾空白:%s/^(.*)n1/1$/ 删除重复行:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf:%s/<!--_.{-}-->//又是删除多行注释(咦?为什么要说「又」呢?):g/s*^$/d 删除所有空行:这个好用有没有人用过还有其他的方法吗?:g!/^dd/d 删除不含字符串'dd'的行:v/^dd/d 同上(译释:v == g!,就是不匹配!):g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行:v/./.,/./-1join 压缩空行:g/^$/,/./-j 压缩空行ndw 或ndW 删除光标处开始及其后的n-1 个字符。
d0 删至行首。
d$ 删至行尾。
ndd 删除当前行及其后n-1 行。
x 或X 删除一个字符。
Ctrl+u 删除输入方式下所输入的文本。
^R 恢复u的操作J 把下一行合并到当前行尾V 选择一行^V 按下^V后即可进行矩形的选择了aw 选择单词iw 内部单词(无空格)as 选择句子is 选择句子(无空格)ap 选择段落ip 选择段落(无空格)D 删除到行尾x,y 删除与复制包含高亮区dl 删除当前字符(与x命令功能相同)d0 删除到某一行的开始位置d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)dw 删除到某个单词的结尾位置d3w 删除到第三个单词的结尾位置db 删除到某个单词的开始位置dW 删除到某个以空格作为分隔符的单词的结尾位置dB 删除到某个以空格作为分隔符的单词的开始位置d7B 删除到前面7个以空格作为分隔符的单词的开始位置d)删除到某个语句的结尾位置d4)删除到第四个语句的结尾位置d(删除到某个语句的开始位置d)删除到某个段落的结尾位置d{ 删除到某个段落的开始位置d7{ 删除到当前段落起始位置之前的第7个段落位置dd 删除当前行d/text 删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容dtc 删除当前行直到下一个字符“c”所出现位置之间的内容D 删除到某一行的结尾d$ 删除到某一行的结尾5dd 删除从当前行所开始的5行内容dL 删除直到屏幕上最后一行的内容dH 删除直到屏幕上第一行的内容dG 删除直到工作缓存区结尾的内容d1G 删除直到工作缓存区开始的内容vi 列操作1、对列插入:1 定位光标位置2 ctrl+v进入visual-block模式(选定光标所在行对应的列)3 j移动光标选择列编辑行(按shift+g移动到文件底部)4 输入大写I5 输入输入要插入的文本6 esc7 保存完成eg:文件内容如下:123455678967755hghgh......45975现在需在第一列插入#,将光标定在第一行第一列处,ctrl+v选定第一列,输入命令I,之后按shift+g,光标跳至最后一行的第一列,此时选定了整个文件的第一列,输入要插入的字符#,此时,字符#只会显示在第一行第一列的位置上,按ESC退出,则其余行的第一列的#将显示出来。
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」,分别控制光标左、下、上、右移一格。
vi操作方法
vi操作方法一、概述vi是一种常用的文本编辑器,它在Unix和Linux系统中广泛使用。
通过vi,用户可以打开、编辑和保存文本文件。
本文将介绍vi的操作方法,帮助读者快速掌握vi编辑器的基本使用。
二、打开文本文件1. 打开终端:在终端中输入vi命令,后接文件名,按回车键。
2. 创建新文件:在终端中输入vi命令,后接新文件名,按回车键。
三、vi编辑模式1. 命令模式:打开文件后的默认模式,可以执行一些命令,如保存文件、退出编辑器等。
- 保存文件:按下Esc键,然后输入":w",按回车键。
- 退出编辑器:按下Esc键,然后输入":q",按回车键。
- 保存并退出:按下Esc键,然后输入":wq",按回车键。
- 强制退出:按下Esc键,然后输入":q!",按回车键。
2. 插入模式:在命令模式下,按下"i"键进入插入模式,可以编辑文本。
- 插入文本:在光标所在位置输入文本。
- 插入行:按下"o"键,在光标所在行下方插入新行。
- 插入行首:按下"I"键,在光标所在行的行首插入文本。
3. 可视模式:在命令模式下,按下"v"键进入可视模式,可以选择文本进行复制、剪切、粘贴等操作。
- 选择文本:移动光标选中文本。
- 复制文本:按下"y"键,复制选中的文本。
- 剪切文本:按下"x"键,剪切选中的文本。
- 粘贴文本:按下"p"键,将复制或剪切的文本粘贴到光标所在位置。
四、vi移动光标1. 基本移动:使用方向键或h(左)、j(下)、k(上)、l(右)进行光标的上下左右移动。
2. 行首行尾:按下"0"键,将光标移动到当前行的行首;按下"$"键,将光标移动到当前行的行尾。
vi基本操作
vi基本操作VI基本操作VI是一款常用的文本编辑器,主要用于在Unix/Linux系统中编辑和查看文件。
学会使用VI基本操作可以提高工作效率,以下是VI基本操作的详细介绍。
1. 打开VI在终端输入vi命令即可打开VI编辑器。
如果要打开一个文件,可以在vi后面加上文件名,例如:vi file.txt。
2. 模式切换VI有三种模式:命令模式、插入模式、底行模式。
命令模式:默认模式,按下Esc键即可进入。
插入模式:用于输入文本内容,按下i或a键即可进入。
底行模式:用于执行一些命令和设置选项,按下冒号(:)即可进入。
3. 命令模式下的基本操作移动光标:h键向左移动一个字符;j键向下移动一行;k键向上移动一行;l键向右移动一个字符;0键移到行首;$键移到行尾;G键移到文件末尾。
删除:x键删除光标所在位置的字符;dd命令删除当前光标所在行;D命令删除从当前光标到行尾的所有内容。
撤销:u命令撤销上一步操作。
复制和粘贴:yy命令复制当前光标所在行;p命令将复制的内容粘贴到当前光标所在行的下一行。
查找和替换:/关键字命令查找指定关键字;:s/原字符串/新字符串/g命令将当前光标所在行中的所有原字符串替换为新字符串。
4. 插入模式下的基本操作插入文本:按下i或a键进入插入模式,输入文本内容即可。
退出插入模式:按下Esc键即可回到命令模式。
5. 底行模式下的基本操作保存文件::w命令将文件保存;:wq命令保存并退出VI编辑器。
退出不保存::q!命令强制退出不保存修改。
设置选项::set nu命令显示行号;:set nonu命令取消显示行号。
6. 快捷键VI有许多快捷键可以提高编辑效率,以下是常用的快捷键:Ctrl+f:向前翻页Ctrl+b:向后翻页Ctrl+d:向前翻半页Ctrl+u:向后翻半页Ctrl+g:显示当前文件名和光标位置7. 结语以上是VI基本操作的详细介绍,掌握这些操作可以更加高效地使用VI编辑器。
需要注意的是,VI编辑器相对于其他文本编辑器来说比较复杂,初学者可能需要花费一些时间来熟悉它的操作方式。
vi 基本操作
vi 基本操作vi或vim是一个功能强大的文本编辑器,广泛用于UNIX和Linux环境。
虽然对于初学者来说,其模式化的编辑方式可能显得有些复杂,但一旦掌握,你会发现它非常高效。
1. 启动与退出打开终端,输入vi后跟文件名即可打开或创建文件:vi filename.txt退出vi:•在命令模式下,输入:q并按回车退出(如果文件已修改,需要使用:q!强制退出)。
•输入:wq保存并退出。
•简写:x也可以保存并退出。
2. 模式vi有三种模式:•命令模式:启动vi后进入,此模式下可以输入命令。
•插入模式:用于文本输入。
从命令模式进入,按i、I、a、A、o或O。
•末行模式:用于保存、退出等操作。
从命令模式进入,按。
3. 基本操作•光标移动:在命令模式下,使用h、j、k和l分别控制光标左、下、上、右移动。
也可以使用方向键。
•删除操作:o x:删除当前字符。
o dw:删除当前单词。
o dd:删除当前行。
•复制与粘贴:o yy:复制当前行。
o p:在当前位置之后粘贴。
o P:在当前位置之前粘贴。
•撤销与重做:o u:撤销上一次操作。
o Ctrl + r:重做上一次撤销的操作。
•查找与替换:在末行模式下,使用/pattern查找,使用:s/old/new/替换第一个匹配项,使用:%s/old/new/g替换所有匹配项。
•插入文本:从命令模式进入插入模式,按i在当前位置之前插入,按a在当前位置之后插入,按o在当前行之下新开一行插入,按O在当前行之上新开一行插入。
•保存与退出:在末行模式下,使用:w保存,使用:q退出,使用:wq或:x保存并退出。
4. 高级功能•视窗操作:vsp或:vsplit垂直分割窗口:sp或:split水平分割窗口。
使用Ctrl + w + h/j/k/l在窗口间移动。
•宏录制:在命令模式下,使用qa开始录制宏并命名为"a",使用q停止录制,使用@a执行宏。
•文件浏览:在末行模式下,使用:e .或:Explore打开当前目录的文件浏览器。
vi常用指令
vi常用指令VI是一款非常实用的文本编辑器。
它经常被用于程序编写、文件编辑等方面。
VI的操作比较简单,只要掌握几个常用的指令,就可以轻松完成许多工作。
本文将会介绍VI的常用指令,帮助读者更好地使用VI。
一、VI的三种模式VI有三种模式:命令模式、插入模式和底行模式。
在命令模式下,我们可以用各种命令对文本进行编辑。
在插入模式下,我们可以直接输入文本。
在底行模式下,我们可以执行一些特定的命令,如保存文件、退出VI等。
二、进入/退出VI进入VI的方法有两种:一个是使用命令vi,另一个是使用命令vim。
两者的效果是一样的,只是vi是VIM的简称。
退出VI的方法有两种:一个是在命令模式下输入命令:wq!表示保存并退出;另一个是在命令模式下输入命令:q!表示不保存并退出。
三、命令模式下的常用指令1.移动光标:我们可以使用h、j、k、l命令将光标左移、下移、上移、右移。
2.插入文本:在命令模式下,我们可以按下i、a、o等指令,进入插入模式,开始编辑文本。
3.删除文本:我们可以使用命令x、dd等来删除文本。
其中x命令会删除光标所在位置的一个字符,而dd命令可以删除一整行。
4.复制/粘贴文本:我们可以使用命令y、p等来复制/粘贴文本。
其中y命令会复制选定的文本,而p命令会将文本粘贴到光标下方。
5.替换文字:我们可以使用命令:s/old/new/g,将old替换为new,其中g表示全局匹配。
6.查找替换:我们可以使用命令:%s/old/new/gc,将old替换为new,其中gc表示全局匹配并要求确认。
四、底行模式下的常用指令1.保存文件:我们可以在命令模式下输入命令:w,保存当前的编辑内容。
2.查找文本:我们可以在命令模式下输入命令:/text,用于查找text。
按下n可以继续查找下一个匹配项。
3.退出VI:我们可以在命令模式下输入命令:q,表示退出VI。
4.保存并退出VI:我们可以在命令模式下输入命令:wq,用于保存当前的编辑内容并退出VI。
vi系统包括哪些内容
vi系统包括哪些内容vi系统是一种文本编辑器,它是Unix操作系统中最常用的编辑器之一。
vi系统包括以下内容:1. 基本操作。
vi系统的基本操作包括插入、删除、复制、粘贴、移动光标等。
通过这些基本操作,用户可以在文本文件中进行编辑、修改和调整。
2. 模式切换。
vi系统有两种模式,命令模式和插入模式。
在命令模式下,用户可以使用各种命令来操作文本;而在插入模式下,用户可以输入、编辑文本内容。
用户可以通过按下“i”键进入插入模式,再按下“Esc”键返回命令模式。
3. 快捷键。
vi系统提供了许多快捷键,用于快速执行各种操作。
例如,“dd”可以删除一行文本,“yy”可以复制一行文本,“p”可以粘贴复制的文本等。
熟练掌握这些快捷键可以极大地提高编辑效率。
4. 搜索和替换。
vi系统支持在文本中进行搜索和替换操作。
用户可以通过“/”命令进行搜索,通过“:s”命令进行替换。
这些功能可以帮助用户快速定位和修改文本中的内容。
5. 多窗口操作。
vi系统支持在同一屏幕上打开多个窗口,用户可以在不同窗口之间进行切换和操作。
这样可以方便用户同时查看和编辑多个文件。
6. 自定义配置。
vi系统可以根据用户的需求进行自定义配置,包括修改快捷键、设置颜色、调整显示方式等。
用户可以根据自己的使用习惯进行个性化设置,提高编辑效率。
总结:vi系统是一款强大的文本编辑器,它包括基本操作、模式切换、快捷键、搜索和替换、多窗口操作以及自定义配置等内容。
熟练掌握vi系统的使用方法,可以极大地提高文本编辑的效率和质量。
希望本文对您了解vi系统有所帮助。
vi基本操作
vi基本操作一、什么是vivi是一种文本编辑器,广泛用于Unix和Linux系统中。
它是一个功能强大但学习曲线较陡峭的编辑器,对于初学者来说可能有些难以掌握。
但一旦熟悉了vi的基本操作,它将成为你在命令行环境中编辑文本的得力助手。
二、vi的三种工作模式vi有三种工作模式,分别是命令模式、插入模式和底行模式。
2.1 命令模式在打开文件时,vi默认进入命令模式。
在命令模式下,你可以执行各种编辑操作,如移动光标、删除字符、复制粘贴等。
以下是一些常用的命令:•h:向左移动光标•j:向下移动光标•k:向上移动光标•l:向右移动光标•x:删除光标所在位置的字符•dd:删除当前行•yy:复制当前行•p:粘贴复制的内容2.2 插入模式在命令模式下,按下i键可以进入插入模式。
在插入模式下,你可以输入文本。
以下是一些常用的插入模式命令:•i:在光标前插入文本•a:在光标后插入文本•o:在当前行下方插入新行并进入插入模式•O:在当前行上方插入新行并进入插入模式•Esc:退出插入模式,回到命令模式2.3 底行模式在命令模式下,按下冒号(:)键可以进入底行模式。
在底行模式下,你可以执行一些高级操作,如保存文件、退出vi等。
以下是一些常用的底行模式命令:•:w:保存文件•:q:退出vi•:wq:保存文件并退出vi•:q!:强制退出vi,不保存文件三、vi的高级操作除了基本的命令、插入和底行模式,vi还有一些高级操作,可以提高编辑效率。
3.1 查找和替换在命令模式下,按下/键可以进入查找模式。
在查找模式下,你可以输入要查找的文本,并按下回车键开始查找。
按下n键可以跳到下一个匹配项,按下N键可以跳到上一个匹配项。
在命令模式下,按下:键可以进入底行模式,并使用%s/old/new/g 命令进行全局替换。
3.2 多窗口操作在命令模式下,按下Ctrl+w键可以进入窗口操作模式。
在窗口操作模式下,你可以使用以下命令切换窗口:•Ctrl+w+h:切换到左边的窗口•Ctrl+w+j:切换到下方的窗口•Ctrl+w+k:切换到上方的窗口•Ctrl+w+l:切换到右边的窗口3.3 宏录制和回放在命令模式下,按下q键加一个字母可以开始录制宏。
vi编辑器的用法
vi编辑器的用法
Vi编辑器是一款文本编辑器,用于在终端进行编辑。
以下是
Vi编辑器的基本用法:
1. 打开文件:在终端中输入`vi 文件名`,其中文件名是要编辑
的文件的名称。
如果文件不存在,则会创建一个新文件。
2. 切换模式:Vi编辑器有三种模式:命令模式、插入模式和
底线命令模式。
默认进入命令模式,按下`i`键进入插入模式,按下`Esc`键回到命令模式。
3. 命令模式:在命令模式下,可以执行各种编辑操作,如删除、复制、粘贴等。
以下是一些常用命令:
- `x`:删除光标所在位置的字符。
- `dd`:删除光标所在行。
- `yy`:复制光标所在行。
- `p`:粘贴复制的内容。
- `u`:撤销上一次操作。
- `:q`:退出Vi编辑器。
- `:w`:保存文件。
4. 插入模式:在插入模式下,可以输入文本内容。
按下`i`键进入插入模式,在光标所在位置进行编辑。
5. 底线命令模式:在命令模式下,按下`:`键进入底线命令模式。
可以执行一些高级命令,如保存文件、查找替换等。
- `:w`:保存文件。
- `:q`:退出Vi编辑器。
- `:wq`:保存并退出Vi编辑器。
- `:s/old/new/g`:查找所有匹配的`old`字符串,并替换为
`new`字符串。
这些是Vi编辑器的基本用法,Vi编辑器还有很多高级功能和命令,可以根据需要进一步学习和掌握。
一套完整的vi设计手册
一套完整的vi设计手册一套完整的Vi设计手册Vi是一款强大的文本编辑器,广泛用于Unix和Linux操作系统中。
它具有简单的界面和丰富的功能,能够提高编辑效率。
下面是一套完整的Vi设计手册,帮助您快速上手并充分利用Vi的各种功能。
一、Vi的基本操作命令1.常用命令- i:在光标处插入文本- a:在光标后插入文本- dd:删除光标所在行- yy:复制光标所在行- p:粘贴复制或删除的内容- u:撤销上一步操作- /text:查找指定文本2.光标移动- h:光标左移一个字符- l:光标右移一个字符- k:光标上移一行- j:光标下移一行- w:光标移动到下一个单词开头- b:光标移动到上一个单词开头- 0:光标移动到行首- $:光标移动到行末- G:光标移动到文件末尾- :n:跳转到第n行3.文件操作- :w:保存文件- :q:退出Vi- :wq:保存并退出- :q!:强制退出,不保存修改二、Vi的高级操作命令1.替换- :s/old/new:将光标所在行中的第一个old替换为new- :s/old/new/g:将光标所在行中的所有old替换为new- :%s/old/new/g:将整个文件中的所有old替换为new- :%s/old/new/gc:将整个文件中的所有old替换为new,并逐一确认是否替换2.块选择- v:进入可视模式,使用上下左右箭头选择块- V:进入行选择模式,选择整行- Ctrl+v:进入块选择模式,可以选择矩形区域- d:删除选择的内容- y:复制选择的内容- p:粘贴复制或删除的内容3.多文件编辑- :e filename:打开指定文件- :n:下一个文件- :prev或:N:上一个文件- :args file1 file2...:同时编辑多个文件- :qall:关闭所有文件三、配置ViVi可以通过编辑配置文件.vimrc来定制自己的编辑环境。
以下是一些常见的配置选项:1.设置自动缩进```set autoindent```2.设置语法高亮```syntax on```3.设置行号显示```set number```4.设置Vi为默认编辑器将以下行添加到/etc/profile文件中:```export EDITOR=/usr/bin/vi```四、Vi的扩展Vi可以通过安装插件来扩展其功能,以下是几个常见的插件:1. nerdtree:一个强大的文件浏览器插件。
vi使用方法
vi使用方法vi是一种常用的文本编辑器,特别适用于在终端环境下进行文本操作。
下面介绍一些vi的基本使用方法。
1. 打开文件:使用命令`vi 文件名`打开一个文件。
如果文件存在,则会直接打开;如果文件不存在,则会创建一个新文件。
2. 退出vi:按下`Esc`键,然后输入`:q`即可退出vi编辑器。
如果未保存文件,则需要输入`:q!`来强制退出。
3. 保存文件:在vi中编辑完成后,按下`Esc`键,然后输入`:w`,文件将被保存。
如果要保存为其他文件名,可以输入`:w 文件名`。
4. 插入和编辑文本:进入vi后,默认是命令模式(Command Mode),需要切换到插入模式(Insert Mode)才能编辑文本。
-在命令模式下,按下`i`键可进入插入模式,在光标所在位置开始插入文本。
-按下`a`键可在光标后插入文本。
-按下`o`键可在当前行的下方插入一行,并进入插入模式。
-按下`O`键可在当前行的上方插入一行,并进入插入模式。
5. 移动光标:-在命令模式下,可以使用`h`、`j`、`k`、`l`分别控制光标向左、下、上、右进行移动。
-使用`Ctrl+f`和`Ctrl+b`可以向前和向后翻页。
-使用`gg`命令可以跳转到文件的起始位置,使用`G`命令跳转到文件的末尾。
6. 删除和复制文本:-在命令模式下,可以使用`x`命令删除光标所在位置的字符。
-使用`dd`命令可以删除当前行。
-使用`yy`命令可以复制当前行。
7. 查找和替换:-在命令模式下,按下`/`键可以进行文本查找。
输入要查找的内容并按下回车后,vi会定位到第一个匹配的位置。
-按下`n`可以继续向下查找下一个匹配。
-使用`:%s/原字符串/新字符串/g`可以替换文本中的所有匹配项。
这些是vi的一些基本用法,通过熟练掌握这些操作,可以高效地进行文本编辑。
VI编辑器的使用方法
一、vi的工作模式vi有两种工作模式:编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中。
指令模式:用来编辑、存盘和退出文件的模式。
运行vi后,首先进入指令模式。
此时输入的任何字符都被视为指令,键入的命令不会在屏幕上显示。
从指令模式切换到编辑模式,则可以按“Insert”键或“i”键,从编辑模式切换到指令模式,可按“Esc”键。
状态行是屏幕底部一行,被vi编辑器用来反馈编辑操作结果。
错误消息或提供信息的消息会在状态行中显示出来。
二、vi的启动和退出1.启动vi在系统图示字符下键入“vi”+“空格”+“文件名”,如:vi test.txtvi可以自动载入所要编辑的文件或是开启一个新文件。
2.退出vi在指令模式下键入如下命令可以退出vi::q 如果用户只是读文件的内容而未对文件进行修改,可以在命令模式下输入“:q”退出vi。
:q! 如果用户对文件的内容作了修改,又决定放弃对文件的修改,则用“:q!”命令。
:w! 强行保存一个vi文件,如果该文件已存在,则进行覆盖。
:wq 保存文件并退出vi。
ZZ 快速保存文件的内容,然后退出vi。
功能和“:wq”相同。
:w filename 相当于“另存为”。
:n,mw filename 将第n-m行的文本保存到指定的文件filename中。
三、vi长指令和短指令长指令:以冒号开头,键入冒号后,在屏幕的最末尾一行会出现冒号提示符,等待用户键入指令,输入完指令后回车,vi会执行该指令。
段指令:与快捷键相似,键入短指令后,vi不会给任何提示就直接执行。
1.输入输出命令a 在光标后输入文本A 在当前行末尾输入文本i 在光标前输入文本I 在当前行开始输入文本o 在当前行后输入新一行O 在当前行前输入新一行2.光标移动命令b 移动到当前单词的开始e 移动到当前单词的结尾w 向后移动一个单词h 向前移动一个字符l 向后移动一个字符j 向下移动一行k 向上移动一行3.删除操作命令x 删除光标所在的字符dw 删除光标所在的单词dd 删除当前行d$ 删除光标至行尾的所有字符D 与“d$”命令相同4.替换操作命令r 替换光标所在的字符R 替换字符序列cw 替换一个单词ce 与“cw”命令相同cb 替换光标所在的前一字符c$ 替换自光标位置至行尾的所有字符C 与“c$”命令相同cc 替换当前行5.查询操作命令/abc 向后查询字符串“abc”?abc 想前查询字符串“abc”n 重复前一次查询N 重复前一次查询,但方向相反6.拷贝粘贴命令yw 将光标所在单词拷入剪贴板y$ 将光标至行尾的字符拷入剪贴板Y 与“y$”命令相同yy 将当前行拷入剪贴板y 将选取的内容拷入剪贴板p 将剪贴板中的内容粘贴在光标后P 将剪贴板中的内容粘贴在光标前7.其他操作命令v 选取文本内容u 取消上一次的操作U 可以恢复对光标所在行的所有改变J 把两行文本链接到一起:set 用来设置或浏览vi系统当前的选项(加参数“all”后查看所有选项的列表) :X 对所编辑的文件进行简单加密四、vi的高级应用1.设置vi环境vi编辑器的行为可以通过设置编辑参数来定义。
浅析VI常用操作:i、x、:wq、dd、p(插入模式、删除光标字符、存盘退出、删除当前行、。。。
浅析VI常⽤操作:i、x、:wq、dd、p(插⼊模式、删除光标字符、存盘退出、删除当前⾏、。
⼀、在 Insert / Normal 模式下编辑⽂档(五个命令:i,x,:wq,dd,p) 打开vim之后默认是Normal模式。
Normal模式下你可以操作你的光标,接下来是Normal模式中的⼀些简单命令,在Normal模式下,⼏乎所有的键都是功能键。
1、按下 i 键,进⼊Insert模式,你就可以输⼊⽂本了,就像⽤“记事本”⼀样。
2、按 esc 退出 insert 模式,进⼊ normal 模式。
3、5⼤命令i →Insert模式,按 ESC 回到Normal模式.x →删当前光标所在的⼀个字符。
:wq →存盘 + 退出 (:w 存盘, :q 退出) (注::w 后可以跟⽂件名)dd →删除当前⾏,并把删除的⾏存到剪贴板⾥p →粘贴剪贴板 i 进⼊ insert 模式修改了⽂件之后,记得 :wq 存盘+退出4、hjkl (强例推荐使⽤其移动光标,但不必需) ,你也可以使⽤光标键 (←↓↑→) 注: j 就像下箭头功能hjkl —— 效果等同于←↓↑→,⽤于移动光标:help<command> —— 显⽰相关命令的帮助5、除了i之外,还有别的插⼊模式可以选择a —— 在光标后插⼊o —— 在当前⾏后插⼊新⾏O —— 在当前⾏前插⼊新⾏⼆、VI 与 VIM 的区别 vi 编辑器是所有Unix及Linux系统下标准的编辑器,它就相当于windows系统中的记事本⼀样,它的强⼤不逊⾊于任何最新的⽂本编辑器。
它是我们使⽤Linux系统不能缺少的⼯具。
由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,学会它后,您将在Linux的世界⾥畅⾏⽆阻。
vim 具有程序编辑的能⼒,可以以字体颜⾊辨别语法的正确性,⽅便程序设计;因为程序简单,编辑速度相当快速。
vim 可以当作 vi 的升级版本,他可以⽤多种颜⾊的⽅式来显⽰⼀些特殊的信息。
vi操作
Vi各种快捷方式1、可直接输入的命令ctrl+v:进入列模式编辑;shift+g:跳至文档末尾;v:列模式(移动光标,全选);u:撤销;Ctrl+r:恢复刚才撤销的动作;Ctrl+w+w:切换到下一个窗口(多窗口操作);2、以冒号“:”开头的命令:set nu:显示行号:set nonu:取消行号显示:%s/字符串1/字符串2/g:全局替换,字符串2替换字符串1注:#也可以作为分隔符:%!sort -u:删除重复行:set noh:取消高亮显示3、以斜杠“/”开头的命令/输入字符:查找内容。
4、行缩进在命令格式下,按住shift并连续点击两次>,不进入插入模式即可实现行缩进行操作1、删除行删除没有内容的空行:g/^$/d删除包含有空格组成的空行:g/^\s*$/d以空格或tab开头到结尾的空行:g/^[ |\t]*$/d:%s/r//g 删除DOS方式的回车^M:%s= *$== 删除行尾空白:%s/^(.*)n1/1$/ 删除重复行:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf:%s/<!--_.{-}-->//又是删除多行注释(咦?为什么要说「又」呢?):g/s*^$/d 删除所有空行:这个好用有没有人用过还有其他的方法吗?:g!/^dd/d 删除不含字符串'dd'的行:v/^dd/d 同上(译释:v == g!,就是不匹配!):g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行:v/./.,/./-1join 压缩空行:g/^$/,/./-j 压缩空行ndw 或ndW 删除光标处开始及其后的n-1 个字符。
d0 删至行首。
d$ 删至行尾。
ndd 删除当前行及其后n-1 行。
x 或X 删除一个字符。
Ctrl+u 删除输入方式下所输入的文本。
^R 恢复u的操作J 把下一行合并到当前行尾V 选择一行^V 按下^V后即可进行矩形的选择了aw 选择单词iw 内部单词(无空格)as 选择句子is 选择句子(无空格)ap 选择段落ip 选择段落(无空格)D 删除到行尾x,y 删除与复制包含高亮区dl 删除当前字符(与x命令功能相同)d0 删除到某一行的开始位置d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)dw 删除到某个单词的结尾位置d3w 删除到第三个单词的结尾位置db 删除到某个单词的开始位置dW 删除到某个以空格作为分隔符的单词的结尾位置dB 删除到某个以空格作为分隔符的单词的开始位置d7B 删除到前面7个以空格作为分隔符的单词的开始位置d)删除到某个语句的结尾位置d4)删除到第四个语句的结尾位置d(删除到某个语句的开始位置d)删除到某个段落的结尾位置d{ 删除到某个段落的开始位置d7{ 删除到当前段落起始位置之前的第7个段落位置dd 删除当前行d/text 删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容dtc 删除当前行直到下一个字符“c”所出现位置之间的内容D 删除到某一行的结尾d$ 删除到某一行的结尾5dd 删除从当前行所开始的5行内容dL 删除直到屏幕上最后一行的内容dH 删除直到屏幕上第一行的内容dG 删除直到工作缓存区结尾的内容d1G 删除直到工作缓存区开始的内容vi 列操作1、对列插入:1 定位光标位置2 ctrl+v进入visual-block模式(选定光标所在行对应的列)3 j移动光标选择列编辑行(按shift+g移动到文件底部)4 输入大写I5 输入输入要插入的文本6 esc7 保存完成eg:文件内容如下:123455678967755hghgh......45975现在需在第一列插入#,将光标定在第一行第一列处,ctrl+v选定第一列,输入命令I,之后按shift+g,光标跳至最后一行的第一列,此时选定了整个文件的第一列,输入要插入的字符#,此时,字符#只会显示在第一行第一列的位置上,按ESC退出,则其余行的第一列的#将显示出来。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
vi是unix操作系统提供的一个全屏幕文本编辑器,是程序员编辑源代码的一个重要工具。
熟练掌握vi命令及其使用技巧往往能起到事半功倍的作用,大大提高编程工作的效率。
在应掌握如i,a,o,0,m,x,u,dd,yy,dw,cw,s,.,/,Ctrl-F,Ctrl-B,Ctrl-G,w,q等基本命令外,下面介绍一些实际工作中所常用的命令技巧。
1.将多个文件调入缓冲使用命令:vi flname1 flname2… flnameN编辑下一文件用:n;回到首文件:rew;查看当前编辑缓冲文件状态:args。
2.修改包含某一字符串的文件可与grep命令结合使用,如欲编辑当前目录下含有abc 字串的所有C源程序:vi`grep -1 abc *.c`3.编辑在缓存中的两个文件快速切换命令::e#或 Ctrl-^ 使用Ctrl-^ 命令更便捷,但如终端类型不正确该功能将无效。
4.将一个文件的部分内容读入另一文件中,有以下两种操作方式:(1)将欲读入的内容用w命令写入一临时文件,再用r命令读入。
该方法笨拙,临时文件需清理。
(2)将欲读入的内容写入一临时缓存器后再切换到目标文件,将光标移至需读入内容处,从缓存器中提出。
写入缓存器a命令:起始行mk 结束行″ay'k从缓存器a中提出:″ap该方法操作方便快捷,不会产生垃圾文件5.放弃一修改过的文件,重新编辑。
(1)使用命令:q!强行退出后再vi flname重新进入。
(2)使用命令:e!强行重编辑更便捷。
6.定位文件尾用G比:更快捷,段落定位用(和)键,括号匹配定位用%,定位行首0,定位行尾,两行连接J。
7.行左移〈〈,行右移〉〉,该命令用于调整源码缩进格式简便快速。
8.大小写字母自动切换命令:shilft+~,屏幕刷新Ctrl-1。
9.当编辑的移动键失效时可用:map命令,但如终端类型不正确该命令将无效。
10.替换命令的特殊处理:文件行首用^标识,行尾用$标识。
如:1,s/^/abc/g 表示文件行首加入abc字串1,.s//abc/g 表示文件首行至光标所在行行尾加入abc字串11.在vi命令状态直接读入一外部命令执行结果:!!+外部命令如:!!date直接读入一系统日期12.在vi中也可输入非ASCII码,如欲输入打印机的换页控制码^L(码值为12),其输入方法是先输Ctrl-v再输Ctrl-1即可,其中Ctrl-v是静默值。
13.显示vi文本中的隐含字符:set list 取消显示:set nolist。
14.临时退出至shell状态命令:sh,exit退出shell后将回到原编辑状态,在同一缓存中编辑另一文件:e flname。
vi编辑器命令很丰富,但没必要各个都需掌握,只要掌握以上提及的基本命令与技巧,即可自如高效的编辑文件了。
功能最强在的编辑器——vivi是所有UNIX系统都会提供的屏幕编辑器,它提供了一个视窗设备,通过它可以编辑文件。
当然,对UNIX系统略有所知的人,或多或少都觉得vi超级难用,但vi是最基本的编辑器,所以希望读者能好好把它学起来,以后在UNIX世界里必将畅行无阻、游刃有余,因为其他几种文本处理器并非UNIX标准配备。
说不定别人的Linux机器没安装joe或pico,如果您不会vi,那您可能就没辄了。
vi的基本概念基本上vi可分为三种操作状态,分别是命令模式(Command mode)、插入模式(Insert mode)和底线命令模式(Last line mode),各模式的功能区分如下:1. Comand mode:控制屏幕光标的移动,字符或光标的删除,移动复制某区段及进入Insert mode下,或者到Last line mode。
2. Insert mode:唯有在Insert mode下,才可做文字数据输入,按Esc等可回到Comand mode。
3. Last line mode:将储存文件或离开编辑器,也可设置编辑环境,如寻找字符串、列出行号等。
不过可以把vi简化成两个模式,即是将Last line mode也算入Command mode,把vi分成Command 和Insert mode。
vi的基本操作?进入vi在系统提示符号输入vi及文件名称后,即可进入vi全屏幕编辑画面:$ vi testfile有一点要特别注意,就是您进入vi之后是处于“Command mode”下,您要切换到Insert mode 才能输入文字。
初次用vi的用户都会想先用上下左右键移动光标,结果电脑一直叫,把自己气个半死,所以进入vi后,先不要乱动,转换入Insert后再说。
?切换至Insert mode编辑文件在Command mode下按‘i’、‘a’或‘o’三键就可进入Insert mode。
这时候您就可以开始输入文字了。
i: 插入,从目前光标所在之处插入所输入的文字。
a: 增加,目前光标所在的下一个字开始输入文字。
o: 插入新的一行,从行首开始输入文字。
?Insert的切换→Command mode,按Esc键您目前处于Insert mode,您就只能一直打字。
假如您发现打错字了,想用光标键往回移动,将该字删除,就要按ESC键转换回Command mode,再删除文字。
?离开vi及存文件在Command mode下,可按冒号“:”键入入Last line mode,例如::w filename (输入“w filename”,将文章存入指定的文件名filename):wq (输入“wq”,因为进入之时已经指定文件名testfile,所以会写入testfile并离开vi):q! (输入“q!”,强制离开并放弃编辑的文件)Command mode功能键列表在介绍command mode指令的时后,指令后面加上“常用”字眼的功能键,表示比较常用的vi指令,请读者您一定要学会、记住。
(1)I、a、o切换进入Insert mode。
[超级常用](2)移动光标vi可以直接用键盘上的光标键来上下左右移动,但正规的vi是用小写英文字母h、j、k、l,分别控制光标左、下、上、右移一格。
按Ctrl+B:屏幕往后移动一页。
[常用]按Ctrl+F:屏幕往前移动一页。
[常用]按Ctrl+U:屏幕往后移动半页。
按Ctrl+D:屏幕往前移动半页。
按 0 (数字零):移动文章的开头。
[常用]按 G:移动到文章的最后。
[常用]按 w:光标跳到下个word的开头。
[常用]按 e:光标跳到下个word的字尾。
按 b:光标回到上个word的开头。
按 $:移到光标所在行的行尾。
[常用]按 ^:移到该行第一个非空白的字符。
按 0:移到该行的开头位置。
[常用]按 #:移到该行的第#个位置,例:51、121。
[常用](3)删除文字x:每按一次删除光标所在位置的后面一个字符。
[超常用]#x:例如,6x 表删除光标所在位置的后面6个字符。
[常用]X:大字的X,每按一次删除光标所在位置的前面一个字符。
#X:例如,20X 表删除光标所在位置的前面20个字符。
dd:删除光标所在行。
[超常用]#dd:例如,6dd表删除从光标所在的该行往下数6行之文字。
[常用](4)复制yw:将光标所在处到字尾的字符复制到缓冲区中。
(想在和#x、#X的功能相反)p:将缓冲区内的字符粘贴到光标所在位置(指令‘yw’与‘p必须搭配使用)。
yy:复制光标所在行。
[超常用]p:复制单行到您想粘贴之处。
(指令‘yy’与‘p’必须搭配使用)#yy:如:6yy表示拷贝从光标所在的该行往下数6行之文字。
[常用]p:复制多行到您想粘贴之处。
(指令‘#yy’与‘p’必须搭配使用)“ayy:将复制行放入buffer a, vi提供buffer功能,可将常用的数据存在buffer “ap:将放在buffer a的数据粘贴。
“b3yy:将三行数据存入buffer b。
“b3p:将存在buffer b的资料粘贴(5)取代r: 取代光标所在处的字符:[常用]R:取代字符直到按Esc为止。
(6)复原(undo)上一个指令u:假如您误操作一个指令,可以马上按u,回复到上一个操作。
[超常用].: .可以重复执行上一次的指令。
(7)更改cw:更改光标所在处的字到字尾$处。
c#w:例如,c3w代表更改3个字。
(8)跳至指定行Ctrl+G:列出光标所在行的行号。
#G:例如,15G,表示移动光标至文章的第15行行首。
[常用]Last line mode下指令简介读者您要使用Last line mode之前,请记得先按Esc键确定您已经处于Command mode下后,再按冒号“:”或“/”或“?”三键的其中一键进入Last line mode。
1.列出行号set nu: 输入“set nu”后,会在文章的每一行前面列出行号。
2.跳到文章的某一行#:井号代表一个数字,在Last line mode提示符号“:”前输入数字,再按Enter就会跳到该行了,如:15[Enter]就会跳到文章的第15行。
[常用]3.寻找字符串/关键字:先按/,再输入您想寻找的字,如果第一次找的关键字不是您相尽可能的,可以一直按n会往下寻找到您要的关键字为止。
?关键字:先按?,再输入您想寻找的字,如果第一次找的关键字不是您想要的,可以按n会往前寻找到您要的关键字为止。
4.取代字符串1,$s/string/replae/g:在last line mode输入“1,$s/string/replace/g”会将全文的string字符串取代为replace字符串,其中1,$s就是指搜寻区间为文章从头至尾的意思,g则是表示全部取代不必确认。
%s/string/replace/c:同样会将全文的string字符串取代为replace字符串,和上面指令不同的地方是,%s和1,$s是相同的功能,c则是表示要替代之前必须再次确认是否取代。
1,20s/string/replace/g:将1至20行间的string替代为relpace字符串。
5.存文件w:在last line mode提示符号“:”前按w即可将文件存起来。
[超常用]#,# w filename:如果您想摘取文章的某一段,存成另一个文件,可用这个指令#代表行号,例如30,50 w nice,将您正在编辑文章的第30~50行存成nice这个文件。
6.离开q:按q就离开,有时如果无法离开vi,可搭配“!:强置离开vi,如“q!”qw:一般建议离开时,搭配w一起使用,如此离开时还可存文件。
[常用]进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字j至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。