如何使用Vim? -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何使用Vim?

小天使爱美 2020-03-25 19:11:48 202

如何使用Vim?

开发工具
分享到
取消 提交回答
全部回答(2)
  • 景凌凯
    2020-03-25 22:17:31

    一.vim的简单介绍

       vim是一个由vi增强版的编辑工具,是一个开源免费的软件,它功能丰富,使用快捷,应用广泛,。vim也是大多数linux系统上的默认编辑器,用于对文本文件进行建立,显示,编辑,删除,复制等操作,需要用命令进行控制。
    

    二.vim帮助信息

       在命令行输入vim --help 或 vimtutor 可以查看vim的用法和信息。
    

    三.vim工作模式

    vim工作模式可分为三种,即——命令模式,编辑模式,末行模式

    1. 命令模式:可以用vim加上任意一个已经存在或是想创建的文件名,如果系统还不存在该文件,就意味着创建文件,如果系统存在该文件,就意味着编辑该文件。此时就可以进入vim的默认模式—命令模式。此时vim等待输入正确的命令,键入的每一个字符都会当作命令来处理。

    [root@localhost Desktop]#vim file

    1. 插入模式:在进入命令模式之后,按下a, i o等键可进入插入模式。进入插入模式后可以对文件进行编辑,左下角出现INSERT

    a 在光标所在字符后插入

    A在光标所在行尾插入

    i 在光标所在字符前插入

    I 在光标所在行行首插入

    o 在光标下插入新行

    O在光标上插入新行

    1. 末行模式:在进入末行模式前先按下【Esc】确认处于命令模式后,按下冒号【:】,即可进入末行模式
    0 0
  • 小天使爱美
    2020-03-26 09:53:25

    Vim是从vi发展而来的文本编辑器,可以用颜色或底线等方式来显示一些特殊的信息。Vim是Linux中必不可少的工具,搭建网站修改配置文件时经常用到。本教程介绍Vim的模式和常用操作。

    背景信息 Vim的各个模式介绍如下表所示: 模式 作用 模式转换 普通模式 (Normal Mode)

    在该模式下,您可以复制、粘贴、删除字符或行。 运行vim <文件名>打开文件时,即进入普通模式。 在其他四个模式下,按Esc键即进入普通模式。 插入模式 (Insert Mode)

    在该模式下,您可以插入字符。 在普通模式下,按i,I,a,A,o,O中任一字符即进入插入模式。 说明 进入插入模式后,编辑器左下角会显示-- INSERT --。 替换模式 (Replace Mode)

    在该模式下,您可以替换字符。 在普通模式下,按R即进入替换模式。 说明 进入替换模式后,编辑器左下角会显示-- REPLACE --。 可视模式 (Visual Mode)

    在该模式下,您可以选择文本。命令(如,复制、替换、删除等)仅作用于选中的文档。 在普通模式下,按v即进入可视模式。 说明 进入可视模式后,编辑器左下角会显示-- VISUAL --。 命令模式 (Command Mode)

    在该模式下,您可以查找字符串、替换字符串、显示行号、保存修改、退出编辑器等。 在普通模式下,按:即进入命令模式。 Vim的常用操作包括以下三种: 插入 替换 删除 插入 基本命令: i:在当前字符的左边插入。 I:在当前行的行首插入 。 a:在当前字符的右边插入。 A:在当前行的行尾插入。 o:在当前行下面插入一个新行。 O:在当前行上面插入一个新行。 本示例中使用的example.conf文件,如下所示:

    To be able to use the functionality of a module which was built as a DSO you

    have to place corresponding `LoadModule' lines at this location so the

    directives contained in it are actually available before they are used.

    Statically compiled modules (those listed by `httpd -l') do not need

    to be loaded here.

    Example:

    LoadModule foo_module modules/mod_foo.so

    Include conf.modules.d/*.conf
    示例一:在配置文件example.conf的第一行,插入Location。步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 按i进入插入模式。 输入Location。 按回车键换行。 按Esc键退出插入模式。 按:wq保存文件并退出。 插入完成后,example.conf文件如下所示: Location

    To be able to use the functionality of a module which was built as a DSO you

    have to place corresponding `LoadModule' lines at this location so the

    directives contained in it are actually available before they are used.

    Statically compiled modules (those listed by `httpd -l') do not need

    to be loaded here.

    Example:

    LoadModule foo_module modules/mod_foo.so

    Include conf.modules.d/*.conf
    示例二:在配置文件example.conf第十行的行首,插入#。步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 按:10将光标定位到第10行。 按I进入插入模式。 输入#。 按Esc键退出插入模式。 按:wq保存文件并退出。 插入操作完成后,example.conf文件如下所示:

    To be able to use the functionality of a module which was built as a DSO you

    have to place corresponding `LoadModule' lines at this location so the

    directives contained in it are actually available before they are used.

    Statically compiled modules (those listed by `httpd -l') do not need

    to be loaded here.

    Example:

    LoadModule foo_module modules/mod_foo.so

    #Include conf.modules.d/.conf
    示例三:在配置文件example.conf中,在Include conf.modules.d/
    .conf行的下一行插入LoadModule rewrite_module modules/mod_rewrite.so。步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 运行/Include conf.modules.d/*.conf找到目标行。 按o进入插入模式。 输入LoadModule rewrite_module modules/mod_rewrite.so。 按Esc键退出插入模式。 按:wq保存文件并退出。 插入完成后,example.conf文件如下所示:

    To be able to use the functionality of a module which was built as a DSO you

    have to place corresponding `LoadModule' lines at this location so the

    directives contained in it are actually available before they are used.

    Statically compiled modules (those listed by `httpd -l') do not need

    to be loaded here.

    Example:

    LoadModule foo_module modules/mod_foo.so

    Include conf.modules.d/*.conf LoadModule rewrite_module modules/mod_rewrite.so
    替换 基本命令:

    R:替换光标高亮的字符,直至按下Esc键退出替换模式。

    本示例使用的example.conf文件,如下所示:

    AllowOverride controls what directives may be placed in .htaccess files.

    It can be "All", "None", or any combination of the keywords:

    Options FileInfo AuthConfig Limit

    AllowOverride None
    示例:将配置文件example.conf中的AllowOverride None更改为AllowOverride All。

    运行vim example.conf命令打开文件,进入普通模式。 运行/AllowOverride None找到目标。 移动光标至None的首字母。 按R进入替换模式。 输入All和一个空格。 说明 None中共包含4个字符,而All只包含3个字符,因此输入All之后,需再输入一个空格。 按Esc键退出替换模式。 按:wq保存文件并退出。 更改后的example.conf文件,如下所示:

    AllowOverride controls what directives may be placed in .htaccess files.

    It can be "All", "None", or any combination of the keywords:

    Options FileInfo AuthConfig Limit

    AllowOverride All
    删除 基本命令: x:删除光标高亮的那一个字符。 nx(n为数字): 删除光标高亮的字符及其后面的n-1个字符。 dd:删除光标所在的那一行。 ndd(n为数字):删除光标所在行及其下面的n-1行。 本示例中使用的example.conf文件如下所示:

    Listen: Allows you to bind Apache to specific IP addresses and/or

    ports, instead of the default. See also the

    directive.

    Change this to Listen on specific IP addresses as shown below to

    prevent Apache from glomming onto all bound IP addresses.

    #Listen 12.34.56.78:80 Listen 80
    示例一:在配置文件example.conf中,将#Listen 12.34.56.78:80行首的#删除。步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 运行/#Listen 12.34.56.78:80找到目标,光标此时定位在#字符上。 按x删除#。 按:wq保存文件并退出。 删除完成后,example.conf文件如下所示:

    Listen: Allows you to bind Apache to specific IP addresses and/or

    ports, instead of the default. See also the

    directive.

    Change this to Listen on specific IP addresses as shown below to

    prevent Apache from glomming onto all bound IP addresses.

    Listen 12.34.56.78:80
    Listen 80
    示例二:在配置文件example.conf中,将#Listen 12.34.56.78:80行和下一行的内容删掉。步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 运行/#Listen 12.34.56.78:80找到目标。 按2dd删除以下内容。 #Listen 12.34.56.78:80 Listen 80 按:wq保存文件并退出。 删除完成后,example.conf文件如下所示:

    Listen: Allows you to bind Apache to specific IP addresses and/or

    ports, instead of the default. See also the

    directive.

    Change this to Listen on specific IP addresses as shown below to

    prevent Apache from glomming onto all bound IP addresses.

    0 0
添加回答
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题