精华内容
下载资源
问答
  • Linux Vim编辑器的基本使用

    千次阅读 多人点赞 2021-02-17 13:28:49
    vi、vim编辑器:如何安装vim编辑器?...vim编辑器如何使用?vim如何进行复制、粘贴、剪切、恢复、撤销、删除等操作?vim四种模式如何切换?vim怎么添加多行注释?代码着色、异常退出如何解决、vim各模式的作用是什么...

    一、VIM编辑器

    1)vi概述

    vi(visual editor)编辑器通常被简称为vi,它是Linux和Unix系统上最基本的文本编辑器,类似于Windows 系统下的notepad(记事本)编辑器。

    2)vim编辑器

    Vim(Vi improved)是vi编辑器的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用。

    3)vim编辑器的安装

    ☆ 已安装

    Linux通常都已经默认安装好了 vi 或 Vim 文本编辑器,我们只需要通过vim命令就可以直接打开vim编辑器了,如下图所示:

    vim

    ☆ 未安装

    有些精简版的Linux操作系统,默认并没有安装vim编辑器(可能自带的是vi编辑器)。当我们在终端中输入vim命令时,系统会提示"command not found"。

    解决办法:有网的前提下,可以使用yum工具对vim编辑器进行安装

    # 安装vim且询问是否时自动选择yes
    # yum install vim -y
    

    4)vim编辑器的四种模式(!)

    ☆ 命令模式

    使用VIM编辑器时,默认处于命令模式。在该模式下可以移动光标位置,可以通过快捷键对文件内容进行复制、粘贴、删除等操作。

    ☆ 编辑模式或输入模式

    在命令模式下输入小写字母a或小写字母i即可进入编辑模式,在该模式下可以对文件的内容进行编辑

    ☆ 末行模式

    在命令模式下输入冒号:即可进入末行模式,可以在末行输入命令来对文件进行查找、替换、保存、退出等操作

    ☆ 可视化模式

    可以做一些列选操作(通过方向键选择某些列的内容,类似于Windows鼠标刷黑)

    二、VIM四种模式的关系

    1)VIM四种模式

    • 命令模式
    • 编辑模式
    • 末行模式
    • 可视化模式

    2)VIM四种模式的关系

    Vim编辑器模式关系图

    三、VIM编辑器的使用

    1)使用vim打开文件

    基本语法:

    # vim  文件名称
    

    ① 如果文件已存在,则直接打开

    ② 如果文件不存在,则vim编辑器会自动在内存中创建一个新文件

    案例:使用vim命令打开readme.txt文件

    # vim readme.txt
    

    2)vim编辑器保存文件

    在任何模式下,连续按两次Esc键,即可返回到命令模式。然后按冒号:,进入到末行模式,输入wq,代表保存并退出。

    Vim 低行模式 wq 保存退出

    3)vim编辑器强制退出(不保存)

    在任何模式下,连续按两次Esc键,即可返回到命令模式。然后按冒号:,进入到末行模式,输入q!,代表强制退出但是不保存文件。

    Vim 低行模式 Q叹强制退出

    4)命令模式下的相关操作(!)

    ☆ 如何进入命令模式

    答:在Linux操作系统中,当我们使用vim命令直接打开某个文件时,默认进入的就是命令模式。如果我们处于其他模式(编辑模式、可视化模式以及末行模式)可以连续按两次Esc键也可以返回命令模式

    ☆ 命令模式下我们能做什么

    ① 移动光标 ② 复制 粘贴 ③ 剪切 粘贴 删除 ④ 撤销与恢复

    ☆ 移动光标到首行或末行(!)

    移动光标到首行 => gg

    移动光标到末行 => G

    ☆ 翻屏

    向上 翻屏,按键:ctrl + b (before) 或 PgUp

    向下 翻屏,按键:ctrl + f (after) 或 PgDn

    向上翻半屏,按键:ctrl + u (up)

    向下翻半屏,按键:ctrl + d (down)

    ☆ 快速定位光标到指定行(!)

    行号 + G,如150G代表快速移动光标到第150行。

    ☆ 复制/粘贴(!)

    ① 复制当前行(光标所在那一行)

    按键:yy

    粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键

    ② 从当前行开始复制指定的行数,如复制5行,5yy

    粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键

    ☆ 剪切/删除(!)

    在VIM编辑器中,剪切与删除都是dd

    如果剪切了文件,但是没有使用p进行粘贴,就是删除操作

    如果剪切了文件,然后使用p进行粘贴,这就是剪切操作

    ① 剪切/删除当前光标所在行

    按键:dd (删除之后下一行上移)

    粘贴:p

    注意:dd 严格意义上说是剪切命令,但是如果剪切了不粘贴就是删除的效果。

    ② 剪切/删除多行(从当前光标所在行开始计算)

    按键:数字dd

    粘贴:p

    特殊用法:

    ③ 剪切/删除光标所在的当前行(光标所在位置)之后的内容,但是删除之后下一行不上移

    按键:D (删除之后当前行会变成空白行)

    ☆ 撤销/恢复(!)

    撤销:u(undo)

    恢复:ctrl + r 恢复(取消)之前的撤销操作【重做,redo】

    总结

    ① 怎么进入命令模式(vim 文件名称,在任意模式下,可以连续按两次Esc键即可返回命令模式)

    ② 命令模式能做什么?移动光标、复制/粘贴、剪切/删除、撤销与恢复

    首行 => gg,末行 => G 翻屏(了解) 快速定位 行号G,如150G

    yy p 5yy p

    dd p 5dd p

    u

    ctrl + r

    5)末行模式下的相关操作(!)

    ☆ 如何进入末行模式

    进入末行模式的方法只有一个,在命令模式下使用冒号:的方式进入。

    ☆ 末行模式下我们能做什么

    文件保存、退出、查找与替换、显示行号、paste模式等等

    ☆ 保存/退出(!)

    :w => 代表对当前文件进行保存操作,但是其保存完成后,并没有退出这个文件

    :q => 代表退出当前正在编辑的文件,但是一定要注意,文件必须先保存,然后才能退出

    :wq => 代表文件先保存后退出(保存并退出)

    如果一个文件在编辑时没有名字,则可以使用:wq 文件名称,代表把当前正在编辑的文件保存到指定的名称中,然后退出

    :q! => 代表强制退出但是文件未保存(不建议使用)

    ☆ 查找/搜索(!)

    切换到命令模式,然后输入斜杠/(也是进入末行模式的方式之一)

    进入到末行模式后,输入要查找或搜索的关键词,然后回车

    如果在一个文件中,存在多个满足条件的结果。在搜索结果中切换上/下一个结果:N/n (大写N代表上一个结果,小写n代表next)

    如果需要取消高亮,则需要在末行模式中输入:noh【no highlight】

    ☆ 文件内容的替换(!)

    第一步:首先要进入末行模式(在命令模式下输入冒号:)

    第二步:根据需求替换内容

    ① 只替换光标所在这一行的第一个满足条件的结果(只能替换1次)

    :s/要替换的关键词/替换后的关键词   +  回车
    

    案例:把hello rhel中的 rhel替换为 rhel8

    切换光标到hello  rhel这一行
    :s/rhel/rhel8
    

    ② 替换光标所在这一行中的所有满足条件的结果(替换多次,只能替换一行)

    :s/要替换的关键词/替换后的关键词/g		g=global全局替换
    

    案例:把hello rhel中的所有rhel都替换为rhel8

    切换光标到hello rhel这一行
    :s/rhel/rhel8/g
    

    ③ 针对整个文档中的所有行进行替换,只替换每一行中满足条件的第一个结果

    :%s/要替换的关键词/替换后的关键词
    

    案例:把每一行中的第一个hello关键词都替换为hi

    :%s/hello/hi
    

    ④ 针对整个文档中的所有关键词进行替换(只要满足条件就进行替换操作)

    :%s/要替换的关键词/替换后的关键词/g
    

    案例:替换整个文档中的hello关键词为hi

    :%s/hello/hi/g
    
    ☆ 显示行号

    基本语法:

    :set nu
    【nu = number】,行号
    

    取消行号 => :set nonu

    ☆ set paste模式

    为什么要使用paste模式?

    问题:在终端Vim中粘贴代码时,发现插入的代码会有多余的缩进,而且会逐行累加。原因是终端把粘贴的文本存入键盘缓存(Keyboard Buffer)中,Vim则把这些内容作为用户的键盘输入来处理。导致在遇到换行符的时候,如果Vim开启了自动缩进,就会默认的把上一行缩进插入到下一行的开头,最终使代码变乱。

    在粘贴数据之前,输入下面命令开启paste模式
    :set paste

    粘贴完毕后,输入下面命令关闭paste模式
    :set nopaste

    总结

    ① 如何进入末行模式,必须从命令模式中使用冒号进行切换

    ② 末行模式下能做什么?保存、退出、查找、替换、显示行号以及paste模式

    ③ 保存 => :w

    ④ 退出 => :q,先保存后退出。:wq :wq 文件名称 :q!

    ⑤ 查找功能 => 命令模式输入/斜杠 + 关键词(高亮显示)=> :noh

    ⑥ 替换功能

    :s/要替换的关键词/替换后的关键词

    :s/要替换的关键词/替换后的关键词/g

    :%s/要替换的关键词/替换后的关键词

    :%s/要替换的关键词/替换后的关键词/g

    ⑦ 显示行号 => :set nu 取消行号 => :set nonu

    ⑧ paste模式 => 将来在粘贴代码的时候为了保存原格式 => 粘贴之前 => :set paste

    四、编辑模式

    1)编辑模式的作用

    编辑模式的作用比较简单,主要是实现对文件的内容进行编辑模式。

    2)如何进入编辑模式

    首先你需要进入到命令模式,然后使用小写字母a或小写字母i,进入编辑模式。

    命令模式 + i : insert缩写,代表在光标之前插入内容

    命令模式 + a : append缩写,代表在光标之后插入内容

    3)退出编辑模式

    在编辑模式中,直接按Esc,即可从编辑模式退出到命令模式。

    五、可视化模式

    1)如何进入到可视化模式

    在命令模式中,直接按ctrl + v(可视块)或V(可视行)或v(可视),然后按下↑ ↓ ← →方向键来选中需要复制的区块,按下y 键进行复制(不要按下yy),最后按下p 键粘贴

    退出可视模式按下Esc

    2)可视化模式复制操作

    第一步:在命令模式下,直接按小v,进入可视化模式

    第二步:使用方向键↑ ↓ ← →选择要复制的内容,然后按y键

    第三步:移动光标,停在需要粘贴的位置,按p键进行粘贴操作

    3)为配置文件添加#多行注释(!)

    第一步:按Esc退出到命令模式,按gg切换到第1行

    第二步:然后按Ctrl+v进入到可视化区块模式(列模式)

    第三步:在行首使用上下键选择需要注释的多行

    第四步:按下键盘(大写)“I”键,进入插入模式(Shift + i)

    第五步:输入#号注释符

    第六步:输入完成后,连续按两次Esc即可完成添加多行注释的过程

    4)为配置文件去除#多行注释(!)

    第一步:按Esc退出到命令模式,按gg切换到第1行

    第二步:然后按Ctrl+v进入可视化区块模式(列模式)

    第三步:使用键盘上的方向键的上下选中需要移除的#号注释

    第四步:直接按Delete键即可完成删除注释的操作

    六、VIM编辑器实用功能

    1)代码着色

    之前说过vim 是vi 的升级版本,其中比较典型的区别就是vim 更加适合coding,因为vim比vi 多一个代码着色的功能,这个功能主要是为程序员提供编程语言升的语法显示效果,如下:

    第一步:定义后缀名为网页文件的代码文件

    # vim index.php
    

    第二步:编写对应的PHP代码

    <?php
    	echo 'hello world';
    ?>
    

    在VIM编辑器中,我们可以通过:syntax on:syntax off开启或关闭代码着色功能。

    2)异常退出解决方案

    什么是异常退出:在编辑文件之后并没有正常的去wq(保存退出),而是遇到突然关闭终端或者断电的情况,则会显示下面的效果,这个情况称之为异常退出:

    vim bug

    温馨提示:每个文件的异常文件都会有所不同,其命名规则一般为.文件名称.swp

    解决办法:将交换文件(在编程过程中产生的临时文件)删除掉即可【在上述提示界面按下D 键或者使用rm 指令删除交换文件】

    # rm .1.php.swp
    

    3)退出vim编辑器

    回顾:在vim中,退出正在编辑的文件可以使用:q或者:wq除了上面的这个语法之外,vim 还支持另外一个保存退出(针对内容)方法:x

    :x在文件没有修改的情况下,表示直接退出(等价于:q),在文件修改的情况下表示保存并退出(:wq

    ② 如果文件没有被修改,但是使用wq 进行退出的话,则文件的修改时间会被更新;但是如果文件没有被修改,使用x 进行退出的话,则文件修改时间不会被更新的;主要是会混淆用户对文件的修改时间的认定。

    展开全文
  • Linux vim编辑器

    千次阅读 2020-01-19 15:14:23
    一、vim简介 vi 编辑器是所有Unix及Linux系统下标准的... vim 是一个同 vi 向上兼容的文本编辑器vim可以当作vi的升级版本,功能特别丰富,代码补完、编译及错误跳转等方便编程的功能,在程序员中被广泛使用。 ...

    一、vim简介

          vi 编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。他是我们使用Linux系统不能缺少的工具。

           vim 是一个同 vi 向上兼容的文本编辑器,vim可以当作vi的升级版本,功能特别丰富,代码补完、编译及错误跳转等方便编程的功能,在程序员中被广泛使用。

           最显眼的区别,vi没有彩色,vim的代码有颜色区别

           连 vim 的官方网站 (http://www.vim.org) 自己也说 vim 是一个程序开发工具而不是文字处理软件。

    CentOS7.6中最小化模式安装是没有默认安装vim的,所以,需要安装一下:

    [root@centos7 ~]# yum -y install vim

       这里root给vim起个别名vi ,这样输入 vi和vim 都是用vim编辑器

    alias vi='vim'
    
    [root@centos7 ~]# source ./.bashrc

    二、vi/vim 的使用

            基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。

    [root@centos7 ~]# vi ./abc/file2.cfg   # 直接输入:vi 文件名 就能够进入 vi的命令模式

        注意:记得 vi 后面一定要加文件名,不管该文件存在与否!如果不存在,会自动新建文件!

    1、命令模式(Command mode)

    用户刚刚启动 vi/vim,便进入了命令模式。

    此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

    以下是常用的几个命令:

    • i 切换到输入模式,以输入字符。
    • x 删除当前光标所在处的字符。
    • : 切换到底线命令模式,以在最底一行输入命令。

    若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

    命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

     

    2、输入模式(Insert mode)

    在命令模式下按下i就进入了输入模式。

    在输入模式中,可以使用以下按键:

    • 字符按键以及Shift组合,输入字符
    • ENTER,回车键,换行
    • BACK SPACE,退格键,删除光标前一个字符
    • DEL,删除键,删除光标后一个字符
    • 方向键,在文本中移动光标
    • HOME/END,移动光标到行首/行尾
    • Page Up/Page Down,上/下翻页
    • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
    • ESC,退出输入模式,切换到命令模式

     

    3、底线命令模式(Last line mode)

    在命令模式下按下:(英文冒号)就进入了底线命令模式。

    底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

    在底线命令模式中,基本的命令有(已经省略了冒号):

    • q 退出程序
    • w 保存文件

    按ESC键可随时退出底线命令模式。

    简单的说,我们可以将这三个模式想成底下的图标来表示:

        

    三、vi/vim 按键说明

         除了上面简易范例的 i, Esc, :wq 之外,其实 vim 还有非常多的按键可以使用。

    第一部分:一般模式可用的光标移动、复制粘贴、搜索替换等 

    移动光标的方法
    h 或 向左箭头键(←)光标向左移动一个字符
    j 或 向下箭头键(↓)光标向下移动一个字符
    k 或 向上箭头键(↑)光标向上移动一个字符
    l 或 向右箭头键(→)光标向右移动一个字符
    如果你将右手放在键盘上的话,你会发现 hjkl 是排列在一起的,因此可以使用这四个按钮来移动光标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 "30j" 或 "30↓" 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可!
    [Ctrl] + [f]屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
    [Ctrl] + [b]屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
    [Ctrl] + [d]屏幕『向下』移动半页
    [Ctrl] + [u]屏幕『向上』移动半页
    +光标移动到非空格符的下一行
    -光标移动到非空格符的上一行
    n<space>那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20<space> 则光标会向后面移动 20 个字符距离。
    0 或功能键[Home]这是数字『 0 』:移动到这一行的最前面字符处 (常用)
    $ 或功能键[End]移动到这一行的最后面字符处(常用)
    H光标移动到这个屏幕的最上方那一行的第一个字符
    M光标移动到这个屏幕的中央那一行的第一个字符
    L光标移动到这个屏幕的最下方那一行的第一个字符
    G移动到这个档案的最后一行(常用)
    nGn 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
    gg移动到这个档案的第一行,相当于 1G 啊! (常用)
    n<Enter>n 为数字。光标向下移动 n 行(常用)
    搜索替换
    /word向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
    ?word向光标之上寻找一个字符串名称为 word 的字符串。
    n这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
    N这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。
    使用 /word 配合 n 及 N 是非常有帮助的!可以让你重复的找到一些你搜寻的关键词!
    :n1,n2s/word1/word2/gn1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则:
    『:100,200s/vbird/VBIRD/g』。(常用)
    :1,$s/word1/word2/g 或 :%s/word1/word2/g从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
    :1,$s/word1/word2/gc 或 :%s/word1/word2/gc从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)
    删除、复制与贴上
    x, X在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
    nxn 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
    dd删除游标所在的那一整行(常用)
    nddn 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)
    d1G删除光标所在到第一行的所有数据
    dG删除光标所在到最后一行的所有数据
    d$删除游标所在处,到该行的最后一个字符
    d0那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
    yy复制游标所在的那一行(常用)
    nyyn 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用)
    y1G复制游标所在行到第一行的所有数据
    yG复制游标所在行到最后一行的所有数据
    y0复制光标所在的那个字符到该行行首的所有数据
    y$复制光标所在的那个字符到该行行尾的所有数据
    p, Pp 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! 举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢? 那么原本的第 20 行会被推到变成 30 行。 (常用)
    J将光标所在行与下一行的数据结合成同一行
    c重复删除多个数据,例如向下删除 10 行,[ 10cj ]
    u复原前一个动作。(常用)
    [Ctrl]+r重做上一个动作。(常用)
    这个 u 与 [Ctrl]+r 是很常用的指令!一个是复原,另一个则是重做一次~ 利用这两个功能按键,你的编辑,嘿嘿!很快乐的啦!
    .不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了! (常用)

    第二部分:一般模式切换到编辑模式的可用的按钮说明 

    进入输入或取代的编辑模式
    i, I进入输入模式(Insert mode):
    i 为『从目前光标所在处输入』, I 为『在目前所在行的第一个非空格符处开始输入』。 (常用)
    a, A进入输入模式(Insert mode):
    a 为『从目前光标所在的下一个字符处开始输入』, A 为『从光标所在行的最后一个字符处开始输入』。(常用)
    o, O进入输入模式(Insert mode):
    这是英文字母 o 的大小写。o 为『在目前光标所在的下一行处输入新的一行』; O 为在目前光标所在处的上一行输入新的一行!(常用)
    r, R进入取代模式(Replace mode):
    r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)
    上面这些按键中,在 vi 画面的左下角处会出现『--INSERT--』或『--REPLACE--』的字样。 由名称就知道该动作了吧!!特别注意的是,我们上面也提过了,你想要在档案里面输入字符时, 一定要在左下角处看到 INSERT 或 REPLACE 才能输入喔!
    [Esc]退出编辑模式,回到一般模式中(常用)

    第三部分:一般模式切换到指令行模式的可用的按钮说明 

    指令行的储存、离开等指令
    :w将编辑的数据写入硬盘档案中(常用)
    :w!若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟你对该档案的档案权限有关啊!
    :q离开 vi (常用)
    :q!若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
    注意一下啊,那个惊叹号 (!) 在 vi 当中,常常具有『强制』的意思~
    :wq储存后离开,若为 :wq! 则为强制储存后离开 (常用)
    ZZ这是大写的 Z 喔!若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开!
    :w [filename]将编辑的数据储存成另一个档案(类似另存新档)
    :r [filename]在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面
    :n1,n2 w [filename]将 n1 到 n2 的内容储存成 filename 这个档案。
    :! command暂时离开 vi 到指令行模式下执行 command 的显示结果!例如
    『:! ls /home』即可在 vi 当中察看 /home 底下以 ls 输出的档案信息!
    vim 环境的变更
    :set nu显示行号,设定之后,会在每一行的前缀显示该行的行号
    :set nonu与 set nu 相反,为取消行号!

    特别注意,在 vi/vim 中,数字是很有意义的!数字通常代表重复做几次的意思! 也有可能是代表去到第几个什么什么的意思。

    举例来说,要删除 50 行,则是用 『50dd』 对吧! 数字加在动作之前,如我要向下移动 20 行呢?那就是『20j』或者是『20↓』即可。

    四、vim 网上的配置文件

         环境变量很多,直接设置只是临时生效,比如显示行号,关闭重新打开就不起作用了,要永远起作用可以修改文件:~/.vimrc

         vim工具开头的时候就说了,它是为编程用的工具并不是一个文字处理工具,所以远远不止上面的基本功能,这个给大家提供一个网上的配置文件,大家可以用用:

    1、~/.vimrc 文件:   另存为 utf-8 编码

    map <F9> :call SaveInputData()<CR>
    func! SaveInputData()
    	exec "tabnew"
    	exec 'normal "+gP'
    	exec "w! /tmp/input_data"
    endfunc
    
    "colorscheme torte
    "colorscheme murphy
    "colorscheme desert 
    "colorscheme desert 
    "colorscheme elflord
    colorscheme ron
    
    
    
    
    "set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
    "set termencoding=utf-8
    "set encoding=utf-8
    "set fileencodings=ucs-bom,utf-8,cp936
    "set fileencoding=utf-8
    
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    " 显示相关  
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    "set shortmess=atI   " 启动的时候不显示那个援助乌干达儿童的提示  
    "winpos 5 5          " 设定窗口位置  
    "set lines=40 columns=155    " 设定窗口大小  
    set go=             " 不要图形按钮  
    "color asmanian2     " 设置背景主题  
    "set guifont=Courier_New:h10:cANSI   " 设置字体  
    "syntax on           " 语法高亮  
    autocmd InsertLeave * se nocul  " 用浅色高亮当前行  
    autocmd InsertEnter * se cul    " 用浅色高亮当前行  
    "set ruler           " 显示标尺  
    set showcmd         " 输入的命令显示出来,看的清楚些  
    "set cmdheight=1     " 命令行(在状态行下)的高度,设置为1  
    "set whichwrap+=<,>,h,l   " 允许backspace和光标键跨越行边界(不建议)  
    "set scrolloff=3     " 光标移动到buffer的顶部和底部时保持3行距离  
    set novisualbell    " 不要闪烁(不明白)  
    set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}   "状态行显示的内容  
    set laststatus=1    " 启动显示状态行(1),总是显示状态行(2)  
    set foldenable      " 允许折叠  
    set foldmethod=manual   " 手动折叠  
    "set background=dark "背景使用黑色 
    set nocompatible  "去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限  
    " 显示中文帮助
    if version >= 603
    	set helplang=cn
    	set encoding=utf-8
    endif
    " 设置配色方案
    "colorscheme murphy
    "字体 
    "if (has("gui_running")) 
    "   set guifont=Bitstream\ Vera\ Sans\ Mono\ 10 
    "endif 
    """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    """""新文件标题
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    "新建.c,.h,.sh,.java文件,自动插入文件头 
    autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()" 
    ""定义函数SetTitle,自动插入文件头 
    func SetTitle() 
    	"如果文件类型为.sh文件 
    	if &filetype == 'sh' 
    		call setline(1,"\#########################################################################") 
    		call append(line("."), "\# File Name: ".expand("%")) 
    		call append(line(".")+1, "\# Author: zhonghongfa") 
    		call append(line(".")+2, "\# mail: zhonghongfa@163.com") 
    		call append(line(".")+3, "\# Created Time: ".strftime("%c")) 
    		call append(line(".")+4, "\#########################################################################") 
    		call append(line(".")+5, "\#!/bin/bash") 
    		call append(line(".")+6, "") 
    	else 
    		call setline(1, "/*************************************************************************") 
    		call append(line("."), "	> File Name: ".expand("%")) 
    		call append(line(".")+1, "	> Author: zhonghongfa") 
    		call append(line(".")+2, "	> Mail: zhonghongfa@163.com ") 
    		call append(line(".")+3, "	> Created Time: ".strftime("%c")) 
    		call append(line(".")+4, " ************************************************************************/") 
    		call append(line(".")+5, "")
    	endif
    	if &filetype == 'cpp'
    		call append(line(".")+6, "#include<iostream>")
    		call append(line(".")+7, "using namespace std;")
    		call append(line(".")+8, "")
    	endif
    	if &filetype == 'c'
    		call append(line(".")+6, "#include<stdio.h>")
    		call append(line(".")+7, "")
    	endif
    	"	if &filetype == 'java'
    	"		call append(line(".")+6,"public class ".expand("%"))
    	"		call append(line(".")+7,"")
    	"	endif
    	"新建文件后,自动定位到文件末尾
    	autocmd BufNewFile * normal G
    endfunc 
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    "键盘命令
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
    nmap <leader>w :w!<cr>
    nmap <leader>f :find<cr>
    
    " 映射全选+复制 ctrl+a
    map <C-A> ggVGY
    map! <C-A> <Esc>ggVGY
    map <F12> gg=G
    " 选中状态下 Ctrl+c 复制
    vmap <C-c> "+y
    "去空行  
    nnoremap <F2> :g/^\s*$/d<CR> 
    "比较文件  
    nnoremap <C-F2> :vert diffsplit 
    "新建标签  
    map <M-F2> :tabnew<CR>  
    "列出当前目录文件  
    map <F3> :tabnew .<CR>  
    "打开树状文件目录  
    map <C-F3> \be  
    "C,C++ 按F5编译运行
    map <F5> :call CompileRunGcc()<CR>
    func! CompileRunGcc()
    	exec "w"
    	if &filetype == 'c'
    		exec "!g++ % -o %<"
    		exec "! ./%<"
    	elseif &filetype == 'cpp'
    		exec "!g++ % -o %<"
    		exec "! ./%<"
    	elseif &filetype == 'java' 
    		exec "!javac %" 
    		exec "!java %<"
    	elseif &filetype == 'sh'
    		:!./%
    	elseif &filetype == 'py'
    		exec "!python %"
    		exec "!python %<"
    	endif
    endfunc
    "C,C++的调试
    map <F8> :call Rungdb()<CR>
    func! Rungdb()
    	exec "w"
    	exec "!g++ % -g -o %<"
    	exec "!gdb ./%<"
    endfunc
    
    
    
    """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    ""实用设置
    """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    " 设置当文件被改动时自动载入
    set autoread
    " quickfix模式
    autocmd FileType c,cpp map <buffer> <leader><space> :w<cr>:make<cr>
    "代码补全 
    set completeopt=preview,menu 
    "允许插件  
    filetype plugin on
    "共享剪贴板  
    set clipboard+=unnamed 
    "从不备份  
    set nobackup
    "make 运行
    :set makeprg=g++\ -Wall\ \ %
    "自动保存
    set autowrite
    set ruler                   " 打开状态栏标尺
    set cursorline              " 突出显示当前行
    set magic                   " 设置魔术
    set guioptions-=T           " 隐藏工具栏
    set guioptions-=m           " 隐藏菜单栏
    "set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
    " 设置在状态行显示的信息
    set foldcolumn=0
    set foldmethod=indent 
    set foldlevel=3 
    set foldenable              " 开始折叠
    " 不要使用vi的键盘模式,而是vim自己的
    set nocompatible
    " 语法高亮
    set syntax=on
    " 去掉输入错误的提示声音
    set noeb
    " 在处理未保存或只读文件的时候,弹出确认
    set confirm
    " 自动缩进
    set autoindent
    set cindent
    " Tab键的宽度
    set tabstop=4
    " 统一缩进为4
    set softtabstop=4
    set shiftwidth=4
    " 不要用空格代替制表符
    set noexpandtab
    " 在行和段开始处使用制表符
    set smarttab
    " 显示行号
    set number
    " 历史记录数
    set history=1000
    "禁止生成临时文件
    set nobackup
    set noswapfile
    "搜索忽略大小写
    set ignorecase
    "搜索逐字符高亮
    set hlsearch
    set incsearch
    "行内替换
    set gdefault
    "编码设置
    set enc=utf-8
    set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
    "语言设置
    set langmenu=zh_CN.UTF-8
    set helplang=cn
    " 我的状态行显示的内容(包括文件类型和解码)
    "set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
    "set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
    " 总是显示状态行
    set laststatus=2
    " 命令行(在状态行下)的高度,默认为1,这里是2
    set cmdheight=2
    " 侦测文件类型
    filetype on
    " 载入文件类型插件
    filetype plugin on
    " 为特定文件类型载入相关缩进文件
    filetype indent on
    " 保存全局变量
    set viminfo+=!
    " 带有如下符号的单词不要被换行分割
    set iskeyword+=_,$,@,%,#,-
    " 字符间插入的像素行数目
    set linespace=0
    " 增强模式中的命令行自动完成操作
    set wildmenu
    " 使回格键(backspace)正常处理indent, eol, start等
    set backspace=2
    " 允许backspace和光标键跨越行边界
    set whichwrap+=<,>,h,l
    " 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)
    set mouse=a
    set selection=exclusive
    set selectmode=mouse,key
    " 通过使用: commands命令,告诉我们文件的哪一行被改变过
    set report=0
    " 在被分割的窗口间显示空白,便于阅读
    set fillchars=vert:\ ,stl:\ ,stlnc:\
    " 高亮显示匹配的括号
    set showmatch
    " 匹配括号高亮的时间(单位是十分之一秒)
    set matchtime=1
    " 光标移动到buffer的顶部和底部时保持3行距离
    set scrolloff=3
    " 为C程序提供自动缩进
    set smartindent
    " 高亮显示普通txt文件(需要txt.vim脚本)
    au BufRead,BufNewFile *  setfiletype txt
    "自动补全
    :inoremap ( ()<ESC>i
    :inoremap ) <c-r>=ClosePair(')')<CR>
    ":inoremap { {<CR>}<ESC>O
    ":inoremap } <c-r>=ClosePair('}')<CR>
    :inoremap [ []<ESC>i
    :inoremap ] <c-r>=ClosePair(']')<CR>
    :inoremap " ""<ESC>i
    :inoremap ' ''<ESC>i
    function! ClosePair(char)
    	if getline('.')[col('.') - 1] == a:char
    		return "\<Right>"
    	else
    		return a:char
    	endif
    endfunction
    filetype plugin indent on 
    "打开文件类型检测, 加了这句才可以用智能补全
    set completeopt=longest,menu
    """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    "NERDtee设定
    let NERDChristmasTree=1
    let NERDTreeAutoCenter=1
    let NERDTreeBookmarksFile=$VIM.'\Data\NerdBookmarks.txt'
    let NERDTreeMouseMode=2
    let NERDTreeShowBookmarks=1
    let NERDTreeShowFiles=1
    let NERDTreeShowHidden=1
    let NERDTreeShowLineNumbers=1
    let NERDTreeWinPos='left'
    let NERDTreeWinSize=31
    nnoremap f :NERDTreeToggle
    map <F7> :NERDTree<CR>  

    这个配置文件主要能帮我们实现:

    1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码的调试
    2.自动插入文件头 ,新建C、C++源文件时自动插入表头:包括文件名、作者、联系方式、建立时间等,可根据需求自行更改
    3.映射“Ctrl + A”为全选并复制快捷键,方便复制代码映射“Ctrl + C”
    4.按“F2”可以直接消除代码中的空行
    5.“F3”可列出当前目录文件,打开树状文件目录
    6. 支持鼠标选择、方向键移动
    7. 代码高亮,自动缩进,显示行号,显示状态行
    8.按“Ctrl + P”可自动补全
    9.[]、{}、()、""、' '等都自动补全
    10.其他功能.....略,看配置上的注释

      

     告诉 vi 编辑器,使用unix换行符。用vi打开 .vimrc文件,直接输入 :set ff=unix 回车,然后在保存退出即可

              

    2、多文件打开  

       在 vim 中可以同时打开两个文件,输入如下命令:

    vim -[o/O] 文件1 文件2

    #  -o    小写 o 会上下分屏打开两个文件

    #  -O    大写 O 会左右分屏打开两个文件

    这样可以同时打开两个文件, 方便操作。

    如果是 “-o” 上下打开两个文件, 可以通过先按 “ctrl+w” ,再按“上下箭头”的方式在两个文件之间切换。

    如果是“-O”左右打开两个文件,可以通过先按“ctrl+w”,再按“左右箭头”的方式在两个文件之间切换。

       

     

    六、vimrc 遇到的两个问题,其他脚本同理

    1、解决windos下写的脚本,传到linux里中文乱码

         方法一:在win上另存为,换编码格式utf8

        方法二:iconv命令转码

    [root@centos7 ~]# iconv -f gb2312  -t utf8 vim.txt -o .vimrc

    参数:

        -f, --from-code=原始文本编码格式

        -t, --to-code=输出编码格式

        -o, --output=输出文件名

    2、win下的脚本与linux下的脚本转换

    1)把win下写的脚本转linux的方法:

         windows下编写的脚本和linux下编写的脚本,格式是不一样的,最明显回车行号符号!

    方法一:在vi里:set ff=unix

    方法二:安装dos2unix工具,用命令 dos2unix  xxxx文件名

    [root@centos7 ~]# yum -y install dos2unix

    2)把linux下写的脚本转win

    反过来,把linux下写的脚本,在win上打开,就没的换行的

    方法一:安装dos2unix工具,在传回win前,用命令 unix2dos  xxxx文件名

    命令语法:

    dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]

    unix2dos [options] [-c convmode] [-o file ...] [-n infile outfile ...]

    参数:

    此命令参数是Red Hat Enterprise Linux Server release 5.7下dos2unix命令参数,不同版本Linux的dos2nnix命令参数有可能不同。

    参数长参数描述
    -h 显示命令dos2unix联机帮助信息。
    -k 保持文件时间戳不变
    -q 静默模式,不输出转换结果信息等
    -v 显示命令版本信息
    -c 转换模式
    -o 在源文件转换,默认参数
    -n 保留原本的旧档,将转换后的内容输出到新档案.默认都会直接在原来的文件上修改

     

    参考文章:

        菜鸟教程-Linux vi/vim

        每天一个linux命令(6):dos2unix unix2dos

     

    vi/vim 记不住回头查看,多用多练

        站在前辈的肩膀上,每天进步一点点

    ends~

    展开全文
  • Linux Vim 编辑器使用

    2019-09-17 10:46:18
    1. Linux vi/vim编辑器介绍 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。 但是目前我们使用比较多的是 vim 编辑器。 vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的...

    1. Linux vi/vim编辑器介绍

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
    但是目前我们使用比较多的是 vim 编辑器。
    vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

    2. 一张图看懂快捷键使用方法

    在这里插入图片描述

    3. 三种模式(使用流程逻辑)

    在这里插入图片描述

    命令模式(Command mode)
    i 切换到输入模式,以输入字符。
    x 删除当前光标所在处的字符。
    : 切换到底线命令模式,以在最底一行输入命令。
    
    输入模式(Insert mode)
    字符按键以及Shift组合,输入字符
    ENTER,回车键,换行
    BACK SPACE,退格键,删除光标前一个字符
    DEL,删除键,删除光标后一个字符
    方向键,在文本中移动光标
    HOME/END,移动光标到行首/行尾
    Page Up/Page Down,上/下翻页
    Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
    ESC,退出输入模式,切换到命令模式
    
    底线命令模式(Last line mode)
    在命令模式下按下:(英文冒号)就进入了底线命令模式。
    底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
    在底线命令模式中,基本的命令有(已经省略了冒号):
       q 退出程序
       w 保存文件
    按ESC键可随时退出底线命令模式。
    

    4. 使用实例

    新建或修改文件(有则新建无则修改)
    vim  /usr/local/con.cfg
    
    编辑

    i, o, a 等键 开始编辑

    退出
    W:write,写入
    Q:quit,退出
    

    保存并退出: 按ESC —>输入:wq —>按Enter
    无修改退出: 按ESC —>输入:q —>按Enter
    不保存退出: 按ESC —>输入:q! —>按Enter
    强制的退出: 按ESC —>输入:! —>按Enter

    展开全文
  • vim编辑器用法,入门必备。 兄弟连Linux集群架构师课件(如有侵权请联系我删除)
  • vim 是所有 Unix/Linux 操作系统默认配备的编辑器。因其强大的功能和高效的操作,vim 也成为众多 Unix/Linux 用户、管理员必须掌握并熟练使用的编辑工具之一。尤其是在没有图形界面的情况下,更是离不开 vimvim ...
  • 在开始学习vim编辑器前,我们先检查一下centos7系统中是否安装了vim编辑器。 yum -y install vim* 当看到下面的提示信息时,则表明下载已经完成。 可以查看安装好的vim编辑器版本 vim -version 什么是 vim...

    在没有使用vim之前,相信大家都使用过Windows下的编辑器,比如Notepad++、UltraEdit、Sublime Text3等。在开始学习vim编辑器前,我们先检查一下centos7系统中是否安装了vim编辑器。

    yum -y install vim*
    

    当看到下面的提示信息时,则表明下载已经完成。
    在这里插入图片描述可以查看安装好的vim编辑器版本

    vim -version
    

    什么是 vim?

    Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 vim 则可以说是程序开发者的一项很好用的工具。

    vim 的使用
    vim有三种模式,分别是:输入模式、命令模式、底线命令模式。这三种模式的作用分别是:
    命令模式
    当我们启动 vim,便进入了命令模式。此状态下敲击键盘动作会被vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

    若想编辑文本:则启动vim,进入了命令模式,按下i,切换到输入模式。

    一般模式切换到编辑模式的可用的按钮说明:

    i, I --  i 为从目前光标所在处输入, I 为在目前所在行的第一个非空格符处开始输入。
    
    a, A -- a 为从目前光标所在的下一个字符处开始输入, A 为从光标所在行的最后一个字符处开始输入。
    
    o, O -- 这是英文字母 o 的大小写。o 为在目前光标所在的下一行处输入新的一行; O 为在目前光标所在处的上一行输入新的一行!
    

    输入模式
    在命令模式下按下i就进入了输入模式。进入输入模式则可以使用回车键、空格键、删除键、上下键等。

    按下ESC,退出输入模式,切换到命令模式。

    一般模式可用的光标移动、复制粘贴、搜索替换等 如下:

    h 或 向左箭头键()  光标向左移动一个字符
    j 或 向下箭头键()   	光标向下移动一个字符
    k 或 向上箭头键() 光标向上移动一个字符
    l 或 向右箭头键()   光标向右移动一个字符
    
    nx --  	n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符
    dd --   	删除游标所在的那一整行
    ndd -- n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 
    yy --  	复制游标所在的那一行
    nyy -- n 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行
    u --  	复原前一个动作
    p -- 把粘贴板上的内容插入到当前行
    
    

    底线命令模式
    在命令模式下按 shift : 进入底线命令模式。在底线命令模式中,基本的命令如下:

    :w 保存文件
    :wq 保存文件并退出 vim
    :x 保存文件并退出 vim
    :q! 不保存文件,强制退出 vim
    :w filename 另存为 filename
    :set nu  显示行号,设定之后,会在每一行的前缀显示该行的行号
    :set nonu 与 set nu 相反,为取消行号!
    

    设置vim显示行号

    在vim编辑器中打开test.c文件后,在命令模式下按 shift : 进入底线命令模式,然后输入 :set nu ,这将显示行号。

    没有行号前如下:
    在这里插入图片描述
    设置显示行号,方便查找编译时错误或者警告所在的当前行。

    在这里插入图片描述

    刚刚那种打开语法行号的方法只是暂时性的,一旦当前文件关闭,下次打开文件就需要重新打开语法行号。:set nu

    如果想要永久显示行号,就需要修改 .vimrc 文件。首先我们需要vim打开 .vimrc 文件。切换到root用户下,用vim 打开 .vimrc

    vim ~/ .vimrc
    

    然后在打开的文件中添加行号 set nu命令。

    在这里插入图片描述

    vim配色
    在默认情况下,打开语法高亮后 Vim 为你应用了一套默认的配色方案,而实际上 Vim 还有很多套配色方案可供我们使用,我们可以自行去修改。选择一个自己比较喜欢的。

    cd /usr/share/vim/vim*/colors/
    

    在这里插入图片描述
    可以看出vim有好多配色方案。选择一个自己喜欢的风格,还是用前面的例子文件test.c然后将它配色。就选择一个moring.vim类型。

    没有配色之前如下:

    在这里插入图片描述
    配上颜色moning类型时如下:

    在这里插入图片描述
    在这里插入图片描述

    扫二维码关注微信公众号,获取技术干货

    展开全文
  • vim编辑器 vi 编辑器简介 vim 基本使用 vim 的工作模式 命令模式操作 移动光标 删除或剪切 复制 撤销 替换 查找 替换 vim 配置文件 vim 使用技巧 在 vim 中导入其他文件内容或命令结果 在 vim 中执行...
  • 当然它的复杂化让人厌恶,但是其大量特性支撑着Unix系统,而在Linux中vi得到改进,也就是接下来要讲的vim编辑器。那什么是vim?vim要如何使用?下面就跟着小编一起来看看吧。 什么是vim?  Vim是从vi 发展出来的...
  • vim编辑器
  • 引入 1.vim概述 Linux下的编辑器最常用的就是vim或者vi文本编辑。vi 和vim 编辑器的区别是vim...vi/vim文本编辑器是我们在linux系统下工作可以说是必须会使用的一个工具,因为linux系统的设计理念是一切皆文件,也就
  • linuxvim编辑器使用技巧linux 下面的vim可以说是vi的升级版本编辑器,一般情况 下用vim比较好,不论是从美观上面还是其他方面-vim基本使用方法: vim下面有三种模式:命令行模式、插入模式、末行模式。 在...
  • Linux vim编辑器的批量注释 vim批量注释的方法: 1、首先打开要注释的文件,将光标调到要注释的那一行,使用Ctrl+v的方法进入块选择模式; 2、然后按住光标上下移动,选择要注释的行; 3、按”I“(大写)进入行首...
  • Linux vim编辑器的详细介绍与使用

    千次阅读 2019-05-13 11:11:58
    vi编辑器linux下最有名的编辑器,也是我们学习 linux必须掌握的工具,在 linux下也可使用 vi进行程序的开发,如 java程序,c程序 vim 的基本操作vim的三种模式:一般模式、编辑模式、命令模式。 * 一般模式...
  • Linux自带的vim编辑器用了有一段时间了,有多强大我真的不知道,毕竟没有各种用,但是使用真的觉得不方便。尤其要退出编辑模式,天哪,每次按Esc简直想死。本来盲打溜溜的我,愣是得看着键盘。好吧,我承认我小指短...
  • Linux中,主要编辑器为vi或者vim,本文围绕vim做简单的讲解说明:Linux默认自带vi(vim)编辑器,其程序包为:[root@linuxidc.com ~]# rpm -qf `which vi` vim-minimal-7.2.411-1.8.el6.x86_64 [root@linuxidc.com ~]# ...
  • linux vim编辑器如何取消点亮字符串

    千次阅读 2014-08-06 14:31:58
    linux vim编辑器看代码或者写代码的时候,
  • 当然它的复杂化让人厌恶,但是其大量特性支撑着Unix系统,而在Linux中vi得到改进,也就是接下来要讲的vim编辑器。那什么是vim?vim要如何使用? 什么是vim?  Vim是从vi 发展出来的一个文本编辑器。代码补完、...
  • centos中默认为vim编译器,有vi编译器,但是vi编译器使用需要加上绝对路径(/bin/vi) 一、安装 第一步安装:apt-get install vim-gtk 第二步:输入vim检验是否安装成功,命令行直接输入vim 二、配置vim 刚...
  • Linuxvim编辑器基本用法 vim 是一个非常古老的命令行下的开发工具。可以理解成一个更高端的记事本。 很多 Linux 都会内置 vim , 作为默认编辑器。我们后续在服务器上直接修改一些配置文件的时候经常会用到。 vim ...
  • 前言: VIM 是一个功能强大、高度可定制的文本编辑器。VIM在编辑器的地位是很高的,得益于 VIM的指法,敲起代码来如... ②.VIM编辑器 切换到文本输入模式的命令键: 键 功能 i ...
  • 文章目录Vim编辑器使用Vi简述vim的三种模式概述转换方式文本编辑1. 命令行模式功能键2.底行模式功能键上机任务:vi编辑器 Vim编辑器使用 Vi简述 Linux 提供了一系列功能强大的编辑器,如 vi 和 Emacs 。 vi 是...
  • Linuxvim编辑器

    2016-10-16 20:58:41
    Linux vim编辑器
  • VIM编辑器使用方法

    2019-08-31 12:18:46
    VIM编辑器使用方法 VIM是一款很强大的编辑器,在linux系统中使用起来很方便,但是VIM编辑器不同于我们在Windows系统中常用的文本编辑器,vim编辑器界面上没有其他的功能选项,左右的操作都只能是通过指令来实现,...
  • Linux系统中vim编辑器基本用法 安装完vim后,键入形如 vim word.txt可以打开文件。 输入一个英文字母i,进入编辑状态以后才能修改内容 修改后,需要按键盘上的Esc键退出vim的编辑状态,之后有以下几种选择: 1、...
  • Linuxvim编辑器

    2019-03-27 22:17:11
    Linuxvim编辑器 ** vim编辑器简介 vim是linux系统中一个重要的工具,在日常工作中用来编写、修改文档,配置一些系统文件,与shell脚本结合到一起,实现最终能够自动化工作的脚本文件。本篇文章介绍v一些vim...
  • VIM编辑器Linux内置的一个文本编辑器,类似于Windows的记事本。 VIM是全屏幕的,且支持命令操作,所以在入门时有些困难,需要通过不断的练习来增加熟练度,后面会发现VIM的功能十分强大。 VIM的三种模式及其转化 ...
  • vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢。今天跟大家分享一下vim编辑器使用vim编辑器模式介绍  vim文本编辑器...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 58,328
精华内容 23,331
关键字:

linuxvim编辑器的用法

linux 订阅