vi编辑器 订阅
Vi,是一款由加州大学伯克利分校,Bill Joy研究开发的文本编辑器。 展开全文
Vi,是一款由加州大学伯克利分校,Bill Joy研究开发的文本编辑器。
信息
研究开发
Bill Joy
中文名
Vi
Microsoft Visual C++发展历程
由加州大学伯克利分校,Bill Joy 研究开发。文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice,文本模式下的编辑器有vi、vim(vi的增强版本)。vi和vim是我们在Linux中最常用的编辑器。vi或vim是Linux最基本的文本编辑工具,vi或vim虽然没有图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理字符界面中,永远不是图形界面的编辑器能比的。 (注意:vi是unix/linux操作系统中最经典的文本编辑器,只能是编辑字符,不能对字体、段落进行排版;它既可以新建文件,也可以编辑文件;他没有菜单,只有命令,且命令繁多。虽然vi的操作方式与其他常用的文本编辑器(如gedit)很不相同 ,但是由于其运行于字符界面,并可用于所有unix/linux环境,仍被经常使用。)vi 的三种命令模式Command(命令)模式,用于输入命令Insert(插入)模式,用于插入文本Visual(可视)模式,用于视化的的高亮并选定正文光标移动(注:不同的版本所给与vi的三种工作模式也不同。vi有三种工作模式:命令模式、文本编辑模式和最后行模式。不同工作模式下的操作方法有所不同。1.命令模式:命令模式是启动vi后进入的工作模式,并可转换为文本编辑模式和最后行模式。在命令模式下,从键盘上输入的任何字符都被当作编辑命令来解释,而不会在屏幕上显示。如果输入的字符是合法的vi命令,则vi就会完成相应的动作;否则vi会响铃警告。2.文本编辑模式:文本编辑模式用于字符编辑。在命令模式下输入i(插入命令)、a(附加命令)等命令后进入文本编辑模式,此时输入的任何字符都被vi当作文件内容显示在屏幕上。按Esc键可从文本编辑模式返回到命令模式。3.最后行模式:在命令模式下,按“:”键进入最后行模式,此时vi会在屏幕的底部显示“:”符号年作为最后行模式的提示符,等待用户输入相关命令。命令执行完毕后,vi自动回到命令模式。为了实现跨平台操作兼容不同类型的键盘,在vi编辑器中无论是输入命令还是输入内容都是用字母键。例如按字母键“i”在文本编辑模式下表示输入字母“i”,如果在命令模式下则表示将工作模式转换为文本编辑模式。)当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标;j 向下移动一行k 向上移动一行h 向左移动一个字符l 向右移动一个字符ctrl+b 向上移动一屏ctrl+f 向下移动一屏向上箭头 向上移动向下箭头 向下移动向左箭头 向左移动向右箭头 向右移动我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。/# +Enter #为查找的内容插入模式(文本的插入)i 在光标之前插入a 在光标之后插入I 在光标所在行的行首插入A 在光标所在行的行末插入o 在光标所在的行的下面插入一行O 在光标所在的行的上面插入一行s 用输入的文本替换光标所在字符S 用输入的文本替换光标所在行文本内容的删除操作;x 一个字符#x 删除几个字符,#表示数字,比如3xdw 删除一个单词#dw 删除几个单词,#用数字表示,比如3dw表示删除三个单词dd 删除一行;#dd 删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行d$ 删除光标到行尾的内容J 清除光标所处的行与下一行之间的换行,行尾没有空格的话会自动添加一个空格。#J 表示合并#(数字)行。退出保存;在命令模式下按 shift+: 文本底端出现冒号:w 保存;:w filename 另存为filename;:wq! 保存退出;:wq! filename 注:以filename为文件名保存后退出;:q! 不保存退出;:x 应该是保存并退出 ,功能和:wq!相同撤销操作u命令取消最近一次的操作,可以使用多次来恢复原有的操作 [1]  U取消所有操作Ctrl+R可以恢复对使用u命令的操作复制操作yy命令复制当前整行的内容到vi缓冲区yw复制当前光标所在位置到单词尾字符的内容到vi缓存区,相当于复制一个单词y$复制光标所在位置到行尾内容到缓存区y^复制光标所在位置到行首内容到缓存区#yy例如:5yy就是复制5行#yw例如:2yw就是复制两个单词如果要复制第m行到第n行之间的内容,可以在末行模式中输入m,ny例如:3,5y复制第三行到第五行内容到缓存区。查找和替换vi的查找和替换功能主要在末行模式完成:至上而下的查找/ 要查找的字符串,其中/代表从光标所在位置起开始查找,例如:/ work至下而上的查找?要查找的字符串 例如:? work替换:s/old/new用new替换行中首次出现的old: s/old/new/g 用new替换行中所有出现的old:#,# s/old/new/g用new替换从第#行到第#行中出现的old:% s/old/new/g用new替换整篇中出现的old如果替换的范围较大时,在所有的命令尾加一个c命令,强制每个替换需要用户进行确认,例如:s/old/new/c 或s/old/new/gc恢复文件vi在编辑某一个文件时,会生成一个临时文件,这个文件以 . 开头并以 .swp结尾。正常退出该文件自动删除,如果意外退出例如忽然断电,该文件不会删除,我们在下次编辑时可以选择一下命令处理:O只读打开,不改变文件内容E继续编辑文件,不恢复.swp文件保存的内容R将恢复上次编辑以后未保存文件内容Q退出viD删除.swp文件或者使用vi -r 文件名来恢复未保存的内容
收起全文
精华内容
下载资源
问答
  • VI编辑器的使用方法
    千次阅读
    2021-09-01 10:20:56

    一、vi的工作模式

    vi有两种工作模式:

    编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中。

    指令模式:用来编辑、存盘和退出文件的模式。

    运行vi后,首先进入指令模式。此时输入的任何字符都被视为指令,键入的命令不会在屏幕上显示。

    从指令模式切换到编辑模式,则可以按“Insert”键或“i”键,从编辑模式切换到指令模式,可按“Esc”键。

    状态行是屏幕底部一行,被vi编辑器用来反馈编辑操作结果。错误消息或提供信息的消息会在状态行中显示出来。

    二、vi的启动和退出

    1.启动vi

    在系统图示字符下键入“vi”+“空格”+“文件名”,如:vi test.txt

    vi可以自动载入所要编辑的文件或是开启一个新文件。

    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 将剪贴板中的内容粘贴在光标前

    例如:

    1、复制

    1. 单行复制

    在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制;

    2)多行复制

    在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3……

    2、粘贴

    在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴

    7.其他操作命令

    v 选取文本内容

    u 取消上一次的操作

    U 可以恢复对光标所在行的所有改变

    J 把两行文本链接到一起

    :set 用来设置或浏览vi系统当前的选项(加参数“all”后查看所有选项的列表)

    :X 对所编辑的文件进行简单加密

    四、vi的高级应用

    1.设置vi环境

    vi编辑器的行为可以通过设置编辑参数来定义。

    使用vi的set命令进行设置。vi在进行设置前必须处于指令模式,但选项的改变是临时的,只在用户当前编辑回话下有效,当用户退出vi编

    辑器时,设置会被丢弃。

    autoindent选项

    将新行与前一行的开始对准,缩写:ai

    该选项将用户键入的每个新行与前一行的开始对齐。该选项对于使用程序语言编程时十分有用。本选项的默认值是noai。

    ignorecase选项

    在搜索命令下忽略大小写,缩写:ic

    vi编辑器提供大小写敏感的搜索,要使vi忽略大小写,键入“:set ignorecase”,要返回大小写敏感状态,键入“:set noignorecase”.

    magic选项

    在搜索时,允许使用特殊字符。

    某些符号在用于搜索时有特殊的含义。当用户将这些符号开头置为nomagic时,这些符号不再有特殊含义。

    number选项

    显示行号,缩写:nu

    vi编辑器一般情况下不显示每行的行号。可以改变number选项来显示行号。

    report选项

    告知用户最后一个命令作用行的行号。

    vi编辑器对用户的编辑工作并不给予任何反馈,如果希望在屏幕上看到自己编辑的反馈信息,用户可以通过编辑report选项来实现。

    scroll选项

    设定在指令模式下使用“Ctrl+d”命令翻滚的行数。

    shiftwidth选项

    设定缩进空格数,一般与autoindent一同使用,缩写:sw

    showmode选项

    在屏幕右角显示vi编辑器模式,缩写:smd

    terse选项

    缩短错误信息。

    wrapmargin选项

    将右边界设定为一定的字符个数,缩写:wm

    用户的终端屏幕通常为80列,当键入到行的末尾时,屏幕即开始一个新行,这就是行回绕。在用户按回车键时,屏幕同样开始一个新行。

    因此,屏幕上一行的长度可以为1-80个字符之间的任何长度。但是,vi编辑器只在用户按回车时,才在用户文件中生成一个新行。如果用户在

    按回车前键入了120个字符,这时键入的文本看起来是在2行,但实际在文件中,这120个字符只在1行中。如果要限制行长度,一是在到达屏幕

    行末尾前按回车换行,另一种是设定wrapmargin选项使vi编辑器自动插入回车。

    2.缩写操作符

    缩写操作符“:ab”命令使得用户给任何字符串指定缩写,该功能可以帮主用户提高输入速度。用户可以为自己经常输入的文本选择一个易

    输入的缩写。

    例如:键入“:ab uox Unix Operating System”命令,当vi处于文本输入模式时,用户键入“uox”接着键入一个空格时,vi自动将键入的

    “uox”变为“Unix Operating System”。

    取消缩写“:unab”命令可以取消一个缩写,例如:键入“:unab uox”命令即可。

    想列出已经设置了的所有缩写,键入“:ab”命令即可。

    3.宏操作符

    宏操作符“:map”命令使用户能将一系列按键指定给某一按键。给用户一个在指令模式下的快捷按键。

    例如:键入“:map q dd”命令,此后处于指令模式时,每当用户键入q时,vi编辑器自动执行“dd”命令。

    取消宏操作“:unmap”命令。

    用户也可以使用map指令指定功能键,例如:键入“:map #n dd”命令,其中“#n”代表以n为功能键号的功能键。

    4.“.exrc”文件

    用户在vi编辑器中所设置的所有选项都是临时的,当用户退出时,它们都会失效。要使这些设置永久保存,可以将选项的设置保存到文件

    “.exrc”中。

    当用户打开vi编辑器时,它自动查看用户当前的工作目录中的“.exrc”文件,并根据在文件中的内容设置编辑环境。如果vi没有在当前目

    录中发现“.exrc”文件,则将查找用户的主目录,并根据在哪里发现的“.exrc”文件设置编辑环境。如果vi一个“.exrc”文件也没找到,则

    对选项使用默认值。

    “.exrc”文件属于启动文件。

    例如:建立一个“.exrc”文件。

    在终端中键入“vi .exrc”,回车。

    在vi编辑器中键入:

    set autoindent

    set shiftwidth=2

    set nomagic

    set number

    set scroll=20

    set showmode

    保存退出即可

    5.运行Shell命令

    用户可以在vi的命令行运行Linux Shell命令,使得用户可以临时抛开vi来运行Shell命令。

    vi编辑器用“!”来通知vi其后面是一个Shell命令。例如:键入“:!date”命令,vi编辑器将清除屏幕,输出当前系统时间,后按任意键返回vi编辑器,并可以继续编辑。

    如果用户系统将Shell命令执行的结果加到文件文本中,可以使用“:r!”和相应的Shell命令来将命令结果写到用户文件文本中。

    光标控制命令

    命令 光标移动

    h或^h 向左移一个字符

    j或j或n 向下移一行

    k或^p 向上移一行

    l或空格 向右移一个字符

    G 移到文件的最后一行

    nG 移到文件的第n行

    w 移到下一个字的开头

    W 移到下一个字的开头,忽略标点符号

    b 移到前一个字的开头

    B 移到前一个字的开头,忽略标点符号

    L 移到屏幕的最后一行

    M 移到屏幕的中间一行

    H 移到屏幕的第一行

    e 移到下一个字的结尾

    E 移到下一个字的结尾,忽略标点符号

    ( 移到句子的开头

    ) 移到句子的结尾

    { 移到段落的开头

    } 移到下一个段落的开头

    0或| 移到当前行的第一列

    n| 移到当前行的第n列

    ^ 移到当前行的第一个非空字符

    $ 移到当前行的最后一个字符

    +或return 移到下一行的第一个字符

    • 移到前一行的第一个非空字符

    在vi中添加文本

    命令 插入动作

    a 在光标后插入文本

    A 在当前行插入文本

    i 在光标前插入文本

    I 在当前行前插入文本

    o 在当前行的下边插入新行

    O 在当前行的上边插入新行

    :r file 读入文件file内容,并插在当前行后

    :nr file 读入文件file内容,并插在第n行后

    escape 回到命令模式

    ^v char 插入时忽略char的指定意义,这是为了插入特殊字符

    在vi中删除文本

    命令 删除操作

    x 删除光标处的字符,可以在x前加上需要删除的字符数目

    nx 从当前光标处往后删除n个字符

    X 删除光标前的字符,可以在X前加上需要删除的字符数目

    nX 从当前光标处往前删除n个字符

    dw 删至下一个字的开头

    ndw 从当前光标处往后删除n个字

    dG 删除行,直到文件结束

    dd 删除整行

    ndd 从当前行开始往后删除

    db 删除光标前面的字

    ndb 从当前行开始往前删除n字

    :n,md 从第m行开始往前删除n行

    d或d$ 从光标处删除到行尾

    dcursor_command 删除至光标命令处,如dG将从当产胆行删除至文件的末尾

    ^h或backspace 插入时,删除前面的字符

    ^w 插入时,删除前面的字

    修改vi文本

    每个命令前面的数字表示该命令重复的次数

    命令 替换操作

    rchar 用char替换当前字符

    R text escape 用text替换当前字符直到换下Esc键

    stext escape 用text代替当前字符

    S或cctext escape 用text代替整行

    cwtext escape 将当前字改为text

    Ctext escape 将当前行余下的改为text

    cG escape 修改至文件的末尾

    ccursor_cmd text escape 从当前位置处到光标命令位置处都改为text

    在vi中查找与替换

    命令 查找与替换操作

    /text 在文件中向前查找text

    ?text 在文件中向后查找text

    n 在同一方向重复查找

    N 在相反方向重复查找

    ftext 在当前行向前查找text

    Ftext 在当前行向后查找text

    ttext 在当前行向前查找text,并将光标定位在text的第一个字符

    Ttext 在当前行向后查找text,并将光标定位在text的第一个字符

    :set ic 查找时忽略大小写

    :set noic 查找时对大小写敏感

    😒/oldtext/newtext 用newtext替换oldtext

    :m,ns/oldtext/newtext 在m行通过n,用newtext替换oldtext

    & 重复最后的:s命令

    :g/text1/s/text2/text3 查找包含text1的行,用text3替换text2

    :g/text/command 在所有包含text的行运行command所表示的命令

    :v/text/command 在所有不包含text的行运行command所表示的命令

    在vi中复制文本

    命令 复制操作

    yy 将当前行的内容放入临时缓冲区

    nyy 将n行的内容放入临时缓冲区

    p 将临时缓冲区中的文本放入光标后

    P 将临时缓冲区中的文本放入光标前

    "(a-z)nyy 复制n行放入名字为圆括号内的可命名缓冲区,省略n表示当前行

    "(a-z)ndd 删除n行放入名字为圆括号内的可命名缓冲区,省略n表示当前行

    "(a-z)p 将名字为圆括号的可命名缓冲区的内容放入当前行后

    "(a-z)P 将名字为圆括号的可命名缓冲区的内容放入当前行前

    在vi中撤消与重复

    命令 撤消操作

    u 撤消最后一次修改

    U 撤消当前行的所有修改

    . 重复最后一次修改

    , 以相反的方向重复前面的f、F、t或T查找命令

    ; 重复前面的f、F、t或T查找命令

    "np 取回最后第n次的删除(缓冲区中存有一定次数的删除内容,一般为9)

    n 重复前面的/或?查找命令

    N 以相反方向重复前面的/或?命令

    保存文本和退出vi

    命令 保存和/或退出操作

    :w 保存文件但不退出vi

    :w file 将修改保存在file中但不退出vi

    :wq或ZZ或:x 保存文件并退出vi

    :q! 不保存文件,退出vi

    :e! 放弃所有修改,从上次保存文件开始再编辑

    vi中的选项

    选项 作用

    :set all 打印所有选项

    :set nooption 关闭option选项

    :set nu 每行前打印行号

    :set showmode 显示是输入模式还是替换模式

    :set noic 查找时忽略大小写

    :set list 显示制表符(^I)和行尾符号

    :set ts=8 为文本输入设置tab stops

    :set window=n 设置文本窗口显示n行

    vi的状态

    选项 作用

    :.= 打印当前行的行号

    := 打印文件中的行数

    ^g 显示文件名、当前的行号、文件的总行数和文件位置的百分比

    :l 使用字母"l"来显示许多的特殊字符,如制表符和换行符

    在文本中定位段落和放置标记

    选项 作用

    { 在第一列插入{来定义一个段落

    [[ 回到段落的开头处

    ]] 向前移到下一个段落的开头处

    m(a-z) 用一个字母来标记当前位置,如用mz表示标记z

    '(a-z) 将光标移动到指定的标记,如用’z表示移动到z

    在vi中连接行

    选项 作用

    J 将下一行连接到当前行的末尾

    nJ 连接后面n行

    光标放置与屏幕调整

    选项 作用

    H 将光标移动到屏幕的顶行

    nH 将光标移动到屏幕顶行下的第n行

    M 将光标移动到屏幕的中间

    L 将光标移动到屏幕的底行

    nL 将光标移动到屏幕底行上的第n行

    ^e(ctrl+e) 将屏幕上滚一行

    ^y 将屏幕下滚一行

    ^u 将屏幕上滚半页

    ^d 将屏幕下滚半页

    ^b 将屏幕上滚一页

    ^f 将屏幕下滚一页

    ^l 重绘屏幕

    z-return 将当前行置为屏幕的顶行

    nz-return 将当前行下的第n行置为屏幕的顶行

    z. 将当前行置为屏幕的中央

    nz. 将当前行上的第n行置为屏幕的中央

    z- 将当前行置为屏幕的底行

    nz- 将当前行上的第n行置为屏幕的底行

    vi中的shell转义命令

    选项 作用

    :!command 执行shell的command命令,如:!ls

    :!! 执行前一个shell命令

    :r!command 读取command命令的输入并插入,如:r!ls会先执行ls,然后读入内容

    :w!command 将当前已编辑文件作为command命令的标准输入并执行command命令,如:w!grep all

    :cd directory 将当前工作目录更改为directory所表示的目录

    :sh 将启动一个子shell,使用^d(ctrl+d)返回vi

    :so file 在shell程序file中读入和执行命令

    vi中的宏与缩写

    (避免使用控制键和符号,不要使用字符K、V、g、q、v、*、=和功能键)

    选项 作用

    :map key command_seq 定义一个键来运行command_seq,如:map e ea,无论什么时候都可以e移到一个字的末尾来追加文本

    :map 在状态行显示所有已定义的宏

    :umap key 删除该键的宏

    :ab string1 string2 定义一个缩写,使得当插入string1时,用string2替换string1。当要插入文本时,键入string1然后按Esc键,系统就插入了string2

    :ab 显示所有缩写

    :una string 取消string的缩写

    在vi中缩进文本

    选项 作用

    ^i(ctrl+i)或tab 插入文本时,插入移动的宽度,移动宽度是事先定义好的

    :set ai 打开自动缩进

    :set sw=n 将移动宽度设置为n个字符

    n> 使n行都向右移动一个宽度,例如3>>就将接下来的三行每行都向右移动一个移动宽度

    1.编辑模式: 插入/替换 (按INSERT键切换)

    2.[ESC] 指令模式

    3.输入模式 将在指令模式下输入 a

    新增(a,A)

    a:从光标所在位置后面开始新增资料,光标后的资料随新增资料向后移动。

    A:从光标所在列最后面的地方开始新增资料。

    插入(i,I)

    i:从光标所在位置前面开始插入资料,光标后的资料随新增资料向后移动。

    I:从光标所在列的第一个非空白字元前面开始插入资料。

    开始(o,O)

    o:在光标所在列下新增一列并进入输入模式。

    O:在光标所在列上方新增一列并进入输入模式。

    4.存盘/退出

    [ESC] :wq //存盘退出

    :w! //存盘继续

    :q //退出 (源文件未被编辑过可用)

    :q! //强制退出

    5.删除与改修

    [ESC] x //删除光标所在字符

    dd //删除光标所在列。

    r //修改光标所在字元,r后接着要修正的字符。

    R //进入取替换状态。

    s //删除光标所在字元,并进入输入模式。

    S //删除光标所在的列,并进入输入模式。

    6.恢复

    [ESC] u //可以恢复被删除的文字。

    U //可以恢复光标所在列的所有改变。

    更多相关内容
  • linux操作系统实验vi编辑器的使用.pdf
  • Linux vi编辑器

    2018-10-29 22:13:56
    全面介绍VI,有实例做练习,快速学习Linux经典的VI编辑器
  • 实验三 vi编辑器

    2018-06-08 11:24:10
    1、进入和退出vi. 2、利用文本插入方式建立一个文件。 3、在新建的文本文件上移动光标位置。 4、在该文件执行删除、复原、修改、替换等操作。
  • vi编辑器(3).docx

    2021-01-05 10:19:33
    vi编辑器(3).docx
  • 给大家分享一下在linux中练习vi编辑器的心得以及需要避免的一些坑。
  • vi编辑器

    2022-03-27 18:40:54
    命令模式: 启动 vi编辑器 后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作; 输入模式: 该模式中主要的操作就是录入文件内容,可以 对文本文件正文进行修改...

    目录

    VI--VIM引言

    一、vi编辑器的工作模式

    二、模式之间切换

    三、vi编辑器的工作模式

     本章总结:


    VI--VIM引言

    Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,

    在程序员中被广泛使用。

    vi作用:

    1.创建或修改文本文件

    2.维护linux系统中的各种配置(不需要自己安装)

    一、vi编辑器的工作模式

    命令模式: 启动 vi编辑器 后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以

    及删除、复制、粘贴文件内容等相关操作;

    输入模式: 该模式中主要的操作就是录入文件内容,可以 对文本文件正文进行修改、或者添加新

    的内容。处于输入模式时,vi编辑器的最后一行会出现“–INSERT–”的状态提示信息;

    末行模式: 该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替

    换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号“:”提示符。

    二、模式之间切换

    三、vi编辑器的工作模式

    三种工作模式

    命令模式:启动vi编辑器后,默认进入命令模式

    输入模式:按a、i、o等键可以进入输入模式

    末行模式:可以进行保存文件、退出编辑器、查找文件、替换、跳入等操作

     四、命令模式的基本操作

     

     

     

      

     本章总结:

    vi文本编辑器工作模式与不同工作模式之间的切换

    vi文本编辑器命令模式与末行模式的基本操作

    展开全文
  • 常用vi编辑器命令行

    2019-03-08 15:45:19
    常用vi编辑器命令行,下载保存,忘记了搜索一下,很好用。
  • 学习Vi编辑器对许多用户来说,在UNIX环境下工作就意味着使用vi,这是一个在大部分UNIX系统上可以使用的全屏幕文本编辑器。然而,即使了解vi的人通常也只使用了它的一小部分功能。 这本畅销书的最新修改版是使用vi...
  • VI编辑器常用命令整理 !!打开/切换文件 "vi file1 file2 file3":打开多个文件 "vi +[#] file": 打开文件,并将光标移到指定的行。例如,"vi +100 records" 从第100行开始编辑文件records,命令三个部分用空格隔...
  • vi编辑器常用命令

    2019-03-12 10:31:48
    vi是linux中最常用的编辑器,本文档总结的命令已经足够日常工作中使用。
  • 该表格中是关于Vi编辑器基本操作指令,帮助新手去熟悉使用VI编辑器
  • linux中vi编辑器

    2018-09-05 19:47:21
    vi编辑器,关于vi编辑器的定义,以及常用使用命令 是比较基础的学习资料
  • VI 编辑器命令汇总

    2018-08-07 09:58:02
    VI 编辑器命令汇总,本人收集网络上的资源进行汇总,非常清晰
  • vi编辑器的使用(一)笔记
  • -ubuntu中使用VI编辑器写C语言程序
  • 实验六Vi文本编辑器 上机实验容: 练习一: 请在/root这个目录下建立一个名为vitest的目录; [root@localhost [root(aiocalhost [rooWlocalhost anaconda-ks.cfg install.log7# cd /root mkdir vitest [root@localhost ...
  • Shell和Vi编辑器

    2013-09-21 20:12:39
    linux实验,应用linux进行管理操作,对vi编辑器进行深入研究,实验。
  • VI编辑器使用详解

    2017-01-07 22:04:03
    VI编辑器使用详解
  • vi编辑器使用文档.doc

    2022-01-15 18:24:30
    vi编辑器使用文档说明
  • ● 掌握Vi编辑器的启动与退出。 ● 掌握Vi编辑器的三种模式及使用方法。 ● 熟悉C/C++编译器gcc的使用。
  • 提供修改linux系统中vi编辑器显示的方法
  • Vi编辑器的使用方法

    2015-04-23 19:31:29
    Vi的使用方法,便于Linux的命令使用。
  • VI 编辑器是Visual interface的简称,通常称之为VI。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制,这是其他编辑...
  • 中标麒麟Linux服务器操作系统培训系列中标麒麟Linux系统vi文本编辑器介绍技术创新变革未来本章目标vi 和 vim 的三种主要模式vi 的基本使用vivi是一种广泛存在于各种UNIX和Linux系统中的文 本编辑程序vi的功能十分...
  • 实验二 Linux下Vi编辑器的使用 一、实验目的及要求 1、掌握Linux系统终端方式使用的编辑器vi;2、学习vi的启动、存盘、文本输入、现有文件的打开;3、学习使用vi编辑器建立、编辑、显示以及加工处理文本文件。 二...

    实验二  Linux下Vi编辑器的使用

    一、实验目的及要求

    1、掌握Linux系统终端方式使用的编辑器vi
    2、学习vi的启动、存盘、文本输入、现有文件的打开;
    3、学习使用vi编辑器建立、编辑、显示以及加工处理文本文件。

    二、实验设备(环境)及要求

    Redhat  linux 9.0

    三、实验内容与步骤

    1.进入和退出vi

    在vi编辑器中,i进入插入模式,Esc退出

    <1>进入vi 在系统提示符($)下输入命令vi和想要编辑(建立)的文件名(如example),便可进入vi

     #vi example


       <2>退出vi

     在命令方式下可有几种方法退出vi编辑器:

     wq 把编辑缓冲区的内容写到你编辑的文件中,退出编辑器,回到UNIX shell下。 

    Esc退出插入模式,输入:wq,回车,退出vi编辑器

     ZZ 仅当作过修改时才将缓冲区内容写到文件上。 

    Esc退出插入模式,输入ZZ,不需要回车,自动退出vi编辑器

    x  ZZ 相同。 

    q! 强行退出vi。感叹号(!)告诉vi,无条件退出,丢弃缓冲区内容。这样,先前对该文件所做的修改或输入都被抛弃。


    2.新建文件
    <1>LinuX提示符$之后,输入命令 vi myfile,然后按〈Enter〉键。 


    <2>输入插入命令i(屏幕上看不到字符i)。 进入插入模式


    <3>然后,输入以下文本行, For mang year you have .......


    <4>将你编辑的文本文件存盘。(利用 wq 命令,或者 x 命令)

    在vi编辑器中输入:wq或者:x


    vi中编写一个abc.c程序,对程序进行编译、连接、运行。具体如下:

      [student@enjoy abc]$ vi abc.c

    main()  

    {

     int i,sum=0;

    for(i=0;i<=100;i++)

    { sum=sum+i; }

    printf("\n1+2+3+...+99+100=%d\n",sum); }

    [student@enjoy abc]$ gcc -o abc abc.c

    [student@enjoy abc]$ ls abc abc.c

    [student@enjoy abc]$ ./abc

    1+2+3+...+99+100=5050

       

      

    展开全文
  • 虚拟机中centos7中vi编辑器模式

    千次阅读 2021-10-02 17:30:51
    vi编辑器是Linux系统下最基本的编辑器,工作在字符模式下。从字面意思上实际上不难理解vi/vim这个工具,就是对文本的编辑,包括添加、修改、保存、内容查找等方面的编辑。 vi和vim具有完全相同的功能,vim是vi的一个...

    一、vi/vim文本编辑器是什么?

    vi编辑器是Linux系统下最基本的编辑器,工作在字符模式下。从字面意思上实际上不难理解vi/vim这个工具,就是对文本的编辑,包括添加、修改、保存、内容查找等方面的编辑。
    vi和vim具有完全相同的功能,vim是vi的一个升级版,两者的区别就是vim增加了一项带有文本颜色的编辑,比如说在编辑一个c语言文本时会,不同的语句会标注出不同的颜色,极大地提高了阅读效率。
    在Linux操作系统中,还有一款带有图形化界面的编辑器gedit,它相当于我们Windows操作系统中的记事本,不过在centos最小化安装系统中是不能用的,除非你安装的是带有图形化界面的Linux操作系统。

    二、vi/vim编辑器的三种工作模式

    vi/vim共有三种工作模式,分别是:
    1.命令command模式,vi 允许用户浏览该文件并输入由一个或多个字母组成的、简短的、大小写敏感的 vi 命令。这些命令的大部分都可以增加一个前缀数字表示执行次数。
    比如:yy(或Y) 复制当前的整行,3yy(或3Y) 复制当前整行和下边紧接着的两行(总共3行)。通过 Esc 键可以随时进入命令模式(而不管当前工作在什么模式下)。事实上,在命令模式下,键盘上所有的输入都被解释为命令而非文本,这往往使得初学者困惑不已。

    2.末行ex模式,我们可以处理文件(包括保存当前文件和运行外部程序)。我们必须在命令模式下输入一个冒号(:),才能进入末行模式,紧接着是要在末行模式下使用的命令。执行之后 vi 自动回到命令模式。

    3.文本输入insert模式(通常在命令模式下使用字母 i 进入这个模式),我们可以随意输入文本。大多数的键入将以文本形式输出到屏幕(一个重要的例外是Esc键,它将退出文本编辑模式并回到命令模式)。

    2.1 命令模式
    使用vi编辑器打开文件后默认进入的是命令模式。在该模式下,可通过键盘控制光标的移动及文本内容的复制、粘贴、删除等操作。

    vi 命令

    下面列出常用的 vi 命令。文件编辑的命令可以通过添加叹号的命令强制执行(如,:q! 命令强制退出编辑器而不保存文件)。
    h 或 ← 光标左移一个字符
    j 或 ↓ 光标下移一行
    k 或 ↑ 光标上移一行
    l (小写字母 L) 或 → 光标右移一个字符
    H 光标移至屏幕顶行
    L 光标移至屏幕末行
    G 光标移至文件末行
    w 光标右移一个词
    b 光标左移一个词
    0 (数字零) 光标移至行首
    ^光标移至当前行第一个非空格字符
    $ 光标移至当前行行尾
    Ctrl-B 向后翻页
    Ctrl-F 向前翻页
    i 在光标所在位置插入文本
    I (大写字母 i) 在当前行首插入文本
    J (大写字母 j) 将下一行与当前行合并(下一行上移到当前行)
    a 在光标所在位置后追加文本
    o (小写字母 O) 在当前行下边插入空白行
    O (大写字母 O) 在当前行上边插入空白行
    r 替换光标所在位置的一个字符
    R 从光标所在位置开始覆盖插入文本
    x 删除光标所在位置的字符
    X 立即删除光标所在位置之前(左边)的一个字符
    dd 剪切当前整行文本(为了之后进行粘贴)
    D 剪切光标所在位置到行末的文本(该命令等效于 d$)
    yX 给出一个移动命令 X (如 h、j、H、L 等),复制适当数量的字符、单词或者从光标开始到一定数量的行
    yyY 复制当前整行
    p 粘贴在光标所在位置之后(下一行)
    P 粘贴在光标所在位置之前(上一行)
    . (句点) 重复最后一个命令
    u 撤销最后一个命令
    U 撤销最后一行的最后一个命令,只有光标仍在最后一行才能执行。
    n 在查找中跳到下一个匹配项
    N 在查找中跳到前一个匹配项
    :n 下一个文件,编辑多个指定文件时,该命令加载下一个文件。
    :e file 加载新文件来替代当前文件
    :r file 将新文件的内容插入到光标所在位置的下一行
    :q 退出并放弃更改
    :w file 将当期打开的缓存区保存为file。如果是追加到已存在的文件中,则使用 :w >> file 命令
    :wq 保存当前文件的内容并退出。等效于 x! 和 ZZ
    :r! command 执行 command 命令,并将命令的输出插入到光标所在位置的下一行

    vi 选项

    下列选项可以让你在运行 Vim 的时候很方便(需要写入到" ~/.vimrc" 文件):

    1.# echo set number >> ~/.vimrc
    2.# echo syntax on >> ~/.vimrc
    3.# echo set tabstop=4 >> ~/.vimrc
    4.# echo set autoindent >> ~/.vimrc

    •set number 当 vi 打开或新建文件时,显示行号。
    •syntax on 打开语法高亮(对应多个文件扩展名),以便源码文件和配置文件更具可读性。
    •set tabstop=4 设置制表符间距为 4 个空格(默认为 8)。
    •set autoindent 将前一行的缩进应用于下一行。

    查找和替换

    vi 具有通过查找将光标移动到(在单独一行或者整个文件中的)指定位置。它还可自动或者通过用户确认来执行文本替换。

    a) 在行内查找。f 命令在当前行查找指定字符,并将光标移动到指定字符出现的位置。

    例如,命令 fh 会在本行中将光标移动到字母h下一次出现的位置。注意,字母 f 和你要查找的字符都不会出现在屏幕上,但是当你按下回车的时候,要查找的字符会被高亮显示。

    b) 在整个文件内查找。使用 / 命令,紧接着需要查找的单词或短语。这个查找可以通过使用 n 命令或者 N 重复查找上一个查找的字符串。

    c) vi 通过使用命令来完成多行或者整个文件的替换操作(类似于 sed)。我们可以使用以下命令,使得整个文件中的单词 “old” 替换为 “young”。

    1.:%s/old/young/g
    注意:冒号位于命令的最前面。

    冒号 (😃 进入末行模式,在本例中 s 表示替换,% 是从第一行到最后一行的表示方式(也可以使用 nm 表示范围,即第 n 行到第 m 行),old 是查找模式,young 是用来替换的文本,g 表示在每个查找出来的字符串都进行替换。

    另外,在命令最后增加一个 c,可以在每一个匹配项替换前进行确认。

    1.:%s/old/young/gc
    将旧文本替换为新文本前,vi/vim 会向我们显示以下信息:
    在这里插入图片描述
    •y: 执行替换(yes)
    •n: 跳过这个匹配字符的替换并转到下一个(no)
    •a: 在当前匹配字符及后边的相同项全部执行替换
    •q 或 Esc: 取消替换
    •l (小写 L): 执行本次替换并退出
    •Ctrl-e, Ctrl-y: 下翻页,上翻页,查看相应的文本来进行替换

    同时编辑多个文件

    我们在命令提示符输入 vim file1 file2 file3 如下:

    1.# vim file1 file2 file3
    

    vim 会首先打开 file1,要跳到 file2 需用 :n 命令。当需要打开前一个文件时,:N 就可以了。

    为了从 file1 跳到 file3

    a) :buffers 命令会显示当前正在编辑的文件列表

    1.:buffers
    

    在这里插入图片描述

    b) :buffer 3 命令(后边没有 s)会打开第三个文件 file3 进行编辑。

    在上边的图片中,标记符号 # 表示该文件当前已被打开,但是是在后台,而 %a 标记的文件是正在被编辑的。另外,文件号(如上边例子的 3)后边的空格表示该文件还没有被打开。

    vi 的临时缓存区

    为了复制连续的多行(比如,假设为 4 行)到一个名为 a 的临时缓存区(与文件无关),并且还要将这些行粘贴到在当前 vi 会话文件中的其它位置,我们需要:

    1.按下 Esc 键以确认 vi 处在命令模式
    2.将光标放在我们希望复制的第一行文本
    3.输入 "a4yy 复制当前行和接下来的 3 行,进入一个名为 a 的缓存区。我们可以继续编辑我们的文件————我们不需要立即插入刚刚复制的行。
    4.当到了需要使用刚刚复制的那些行的位置,在 p(小写)或 P(大写)命令前使用"a来将复制行插入到名为 a 的 缓存区:
    输入 "ap,复制行将插入到光标位置所在行的下一行。
    输入 "aP,复制行将插入到光标位置所在行的上一行。
    如果愿意,我们可以重复上述步骤,将缓存区 a 中的内容插入到我们文件的多个位置。像本节中这样的一个临时缓存区,会在当前窗口关闭时释放掉。

    总结
    像我们看到的一样,vi/vim 在命令接口下是一个强大而灵活的文本编辑器。

    展开全文
  • vi编辑器 常用命令汇总

    千次阅读 2021-03-24 09:53:58
    1.vi编辑器的使用 一个编辑器具备的功能 1)打开文件、新建文件、保存文件 2)光标移动 3)文本编辑 4)(多行间|多列间)复制、粘贴、删除 5)查找和替换 1.1 vi编辑器的配置 进入/etc/vim路径 cd /etc/vim 查看当前...
  • * 2015 精品课程 Linux系统管理 精品课程 * 教学计划 ORJECT 教学时数4节课 适用年级大学二年级 教学内容vi编辑器的使用 教学重点vi编辑器的三种模式 教学难点vi的常用命令及操作 教学目标Linux中常见文本编辑器 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 149,383
精华内容 59,753
关键字:

vi编辑器

友情链接: 求最大值.zip