精华内容
下载资源
问答
  • vim内置搜索命令vimgrep, 可以在多个文件里查找关键字。相当于IDE里的关键字搜索。 vimgrep命令格式: vimgrep /要搜索的字符串/gj 文件 上面的g和j参数都是可选的 /g : 加上g参数的话, 如果一行有多个匹配, 那么...

    vim内置搜索命令vimgrep, 可以在多个文件里查找关键字。相当于IDE里的关键字搜索功能。

    vimgrep命令:

    :vim[grep] /pattern/[g][j] files ...
    g和j参数都是可选的,:vimgrep命令可以缩写为:vim
    g :
    不加该选项时,当一行中有多个匹配项时,仅在 quickfix 中添加一行。添加该选项时,每个匹配都在quickfix 列表中添加一项。所以一般不用加/g参数;
    j :
    不加该选项,查找完毕,光标将跳转到第一个匹配处。添加该选项时,查找完毕,仅更新 quickfix 列表,光标不跳转。所以一般都会加上/j参数;
    files :
    % 表示在当前缓冲区文件中查找。
    *.cpp 表示在当前目录中的 .cpp 文件中搜索。
    **/*.cpp 表示在当前目录及子目录中 .cpp 文件中搜索。
    **/*.cpp **/*.h 表示在当前目录及子目录中 .cpp、.h 文件中搜索。
    当前目录 用 :pwd 命令查看当前目录。用 :cd 命名切换当前目录。
    文件可以为多个,中间空格隔开
    vimgrep帮助信息::help :vimgrep

    一些使用案例:

    在当前目录下(不包括子目录)的所有php文件里搜索"keyword", 且不自动跳转到搜索结果:
    vimgrep /keyword/j *.php

    在当前目录及其子目录下的所有php文件里递归搜索"keyword",且不自动跳转到搜索结果:
    vimgrep /keyword/j **/*.php
    注意:**表示在当前目录以及子目录递归, 比如**/*.php

    在当时目录及其子目录下递归搜索"keyword"
    vimgrep /keyword/j **

    如果要搜索多个文件扩展名, 用空格分开即可: vimgrep /字符串/j **/*.cpp **/*.php

    使用绝对路径, 递归搜索:
    vimgrep /字符串/j /home/user/**/*.cpp
    vimgrep /字符串/j D:\home\user/**/*.cpp

    vim除了使用vimgrep命令进行文本搜索,还可以使用grep命令进行文本搜索。
    vimgrep命令使用vim内置的搜索引擎,而grep命令调用外部grep工具实现文本搜索,所以相对速度更快。
    grep命令会运行由选项grepprg所指定的程序。在Linux系统上,grepprg默认是grep -n,在Windows系统上,grepprg默认是findstr /n
    由此可见,使用vimgrep命令在不同平台上将获得一致的体验。而grep命令则是与操作系统相关的,在不同平台会有不同的行为。所以vimgrep命令兼容性更强。

    grep命令

    在当前目录下查找所有文件:
    :grep block *.*
    默认情况下,grep是区分大小写的,可以使用-i选项来忽略大小写:
    :grep -i word filename

    使用-o选项,将只显示匹配的字符,而不是整行内容:
    :grep -o [[:punct:]] filename
    grep帮助信息::help :grep
    请注意,递归搜索子目录的**/*.*通配符,对于Linux下的:vimgrep和:grep命令有效;但对于Windows下的:grep命令不起作用。

    'grepprg’选项

    使用以下命令,可以查看’grepprg’选项的当前设置:
    :set grepprg?
    在不同的操作系统下,Vim将默认使用不同的外部grep工具:
    在Windows下
    grepprg=findstr /n
    在Linux下
    grepprg=grep -n $* /dev/null
    如果希望默认查询当前目录以及其子目录,那么可以使用以下设置:
    在Windows下
    set grepprg=findstr /S /n
    在Linux下
    set grepprg=grep -nR $* /dev/null
    请注意,您可以使用:pwd命令来查看当前目录。
    如果您在Windows中已经安装了Git或Cygwin,那么只需要在环境变量PATH中增加相应目录,即可调用其自带的grep命令:
    C:\Program Files\Git\usr\bin
    D:\cygwin64\bin
    在Windows命令行中,可以使用以下命令进行验证:$ grep --version
    然后在vimrc配置文件中,使用以下设置:
    set grepprg=grep\ -rnIH\ --exclude-dir=.git
    通过以上设置,可以在Windows环境中使用Linux风格的grep程序。

    QuickFix列表窗口

    :cw 打开 quickfix 列表窗口,也可用:copen
    :ccl 关闭 quickfix 列表窗口,是:cclose的缩写
    :cn, :cp:cnext, :cprev的缩写,跳转到quickfix 列表的下 / 上一个匹配处
    :cfirst, :clast 跳转到 quickfix 列表的第一项、最后项的匹配处。
    每次跳转需要输入命令太麻烦了,可以设置快捷键映射一下:
    用 F11 及 Shift-F11 在 quickfix 列表中向后、向前跳转。

    :nnoremap <F11>  :cnext<CR>
    :nnoremap <S-F11>  :cprev<CR>
    

    lvim[grep] 与 vim[grep] 的区别

    lvim 使用窗口的本地列表,vim 使用 quickfix 列表。
    lvim 的窗口本地列表跳转命令为::lnext 、 :lprev 、 :lfirst 及 :llast 。
    命令除了首字母不同,其余是一样的。(一个是l,一个是c)

    :grep:vimgrep命令,都将在QuickFix中显示搜索结果。
    :lgrep:lvimgrep命令实现相同的功能,但使用地址列表(Location List)来显示匹配结果。

    使用:copen:cw命令打开的Quickfix,是全局性的。而使用:lopen打开的Location List,则是独立存在于各个窗口中的。

    对于Quickfix,使用:cp命令,跳转到上一个匹配处;使用:cn命令,跳转到下一个匹配处。

    对于Location List,使用:lpre命令,跳转到上一个匹配处;使用:lnext命令,跳转到下一个匹配处。

    参考/转载:

    • https://zhuanlan.zhihu.com/p/148280898
    • https://fengliurenwu.blog.csdn.net/article/details/76193550?spm=1001.2101.3001.6650.2&utm_medium=distribute.wap_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-2.wap_blog_relevant_default&depth_1-utm_source=distribute.wap_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-2.wap_blog_relevant_default
    展开全文
  • vim:未找到命令

    千次阅读 2020-12-18 11:10:27
    vim: 未找到命令 解决: 一键配置所有 yum -y install vim* 检查是否安装 rpm -qa |grep vim 出现以下基本就ok咯:

    vim: 未找到命令

    解决:

    • 一键配置所有
    yum -y install vim*
    
    • 检查是否安装
    rpm -qa |grep vim
    

    出现以下基本就ok咯:

    在这里插入图片描述

    展开全文
  •  [# comment] -- INSERT -- 3、可以在光标下新增一行,用小写的o vim命令模式 1、查找 /even # Each line describes one service, and is of the form: # # service-name port/protocol [aliases ...] [# ...

    进入编辑模式

    1、[root@test ~]# vi /etc/services

    2、输入小写的i后再下发就会出现--INSERT--,就可以编辑

    #

    # Each line describes one service, and is of the form:

    #

    # service-name  port/protocol  [aliases ...]   [# comment]

    -- INSERT --

    3、可以在光标下新增一行,用小写的o

    vim命令模式

    1、查找

    /even

    # Each line describes one service, and is of the form:

    #

    # service-name  port/protocol  [aliases ...]   [# comment]

    /even

    2、按n选择下一个(向下查找)

    3、输入?even 选择n向前查找

    4、将所有的even字符替换成test,若是不加g的话,就只替换第一行

    :1,$s/enev/test/g

    5、:1,955s/zserv/test/g,在1行到955行替换

    vim实践

    1、[root@test ~]# cp /etc/services /temp/1.txt

    2、需要查看45行

    :45

    3、删除一行

    dd

    删除3行

    3dd

    4、还原上一步

    u

    5、移动到最后一行

    G

    6、移动到行首

    gg

    7、复制2行

    2yy

    8、粘贴

    p

    9、按u恢复上一步,按Ctrl+r 相反

    展开全文
  • vi是文本编辑器,而vim是类似于vi的文本编辑器,是代码编辑比较实用的工具,下面小编就给大家介绍下Linux如何使用Vi、Vim命令,感兴趣的朋友一起来了解下吧。一、一般模式:删除、复制与粘贴类命令x,X x为向后删除...

    vi是文本编辑器,而vim是类似于vi的文本编辑器,是代码编辑比较实用的工具,下面小编就给大家介绍下Linux如何使用Vi、Vim命令,感兴趣的朋友一起来了解下吧。

    6e2f1de21453486be35bba1879efe5db.png

    一、一般模式:删除、复制与粘贴类命令

    x,X x为向后删除一个字符,X为先前删除一个字符

    nx(n代表数字) 向后删除n个字符

    dd 删除当前行

    D 删除当前行所有字符,试成为空行

    ndd(n代表数字) 删除光标所在行的向下n列

    d1G 删除光标所在行到第一行的所有数据

    dG 删除光标所在行到最后一行的所有数据

    yy 复制光标所在行

    y1G 复制光标所在行到第一行的所有数据

    yG 复制光标所在行到最后一行的所有数据

    ynj(n代表数字) 复制光标所在行向下n+1行

    dnj(n代表数字) 删除光标所在行向下n+1行

    p,P p为复制的数据粘贴在光标的下一行,P为复制的数据粘贴在光标的上一行

    J 将光标所在行与下一行的数据结合成一行

    u 恢复前一个动作(undo)

    二、编辑模式命令

    i,I i为在当前光标所在处插入输入的文字,I为在光标所在行第一个非空字符插入输入的文字

    a,A a为在当前光标所在处下一个字符插入输入的文字,A为在光标所在行最后一个字符的下一个字符处插入输入的文字

    o,O o为在光标所在行的下一行行首开始插入字符,O为在光标所在行的上一行行首开始插入字符

    r,R r为替换光标所在那一个字符,R为一直替换光标所指的文字,直到退出

    Esc 退出,回到一般模式

    三、命令模式

    h 光标向左移一个字符

    j 光标向下移一个字符

    k 光标向上移一个字符

    l 光标向右移一个字符

    Ctrl+f 屏幕向下翻一页

    Ctrl+b 屏幕向上翻一页

    Ctrl+d 屏幕向下翻半页

    Ctrl+u 屏幕向上翻半页

    + 光标移动到下一行的第一个非空字符

    - 光标移动到当前行的第一个非空字符

    n空格(n代表数字) 光标向当前行向右移动n个字符

    0(数字0) 光标移动到当前行的第一个字符(可以为空字符,注意与-区分)

    $ 光标移动到当前行的最后一个字符(可以为空字符,注意与-区分)

    H 光标移动到当前屏幕最上方的那一行的第一个非空字符

    M 光标移动到当前屏幕最中间那一行的第一个非空字符

    L 光标移动到当前屏幕最下方的那一行的第一个非空字符

    G 光标移动到该文章最后一行的第一个非空字符

    nG(n代表数字) 光标移动到该文章第n行的第一个非空字符

    n 光标从当前行向下移动n行的第一个非空字符

    /word 在光标之后查找word字符串

    ?word 在光标之前查找word字符串

    :s/word1/word2/g 在光标当前行查找word1,并替换成word2

    :n1,n2s/word1/word2/g 在第n1行与第n2行之间查找word1,并替换成word2

    :%s/word1/word2/g 整个文章查找word1,并替换成word2

    :w 将编辑的数据保存到硬盘文件中

    :w [filename] 将编辑后的数据保存到硬盘的另一个文件中

    :r [filename] 在编辑数据时,读入另一个文件中的数据,即将filename文件中的内容加到光标所在行下一行

    :wq或:x 保存并退出

    :q 退出,适用于未修改的文件

    :q! 强制退出,适用于修改文件后不保存退出

    :set nu 显示行号

    :set nonu 取消行号

    :n1,n2 w [filename] 将n1到n2行的内容保存到名为filename的文件中

    上面就是Linux中vi、vim命令的用法介绍了,本文简单的介绍了这两个命令的用法,具体的实例操作还请多多关注系统之家。

    展开全文
  • Linux vim编辑命令模式

    2021-05-10 10:59:08
    vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率。vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。在一般的系统管理维护中vi就够用,如果想使用代码加亮的话可以使用vim。下面是vi的使用教程...
  • ios6 滤镜相关知识内容网址http://blog.csdn.net/justinjing0612/article/details/8145607#【Masonry】使用技巧 - 篇一从别人项目得到的灵感 : 请看以下代码 UIColor *darkColor = [UIColor colorWithHexString:@"0x...
  • vim 的三种常用模式一般模式移动光标位置删除,复制,粘贴进入编辑模式"i" 当前字符前插入"I" 在光标所在行的行首插入"a" 在当前字符后插入"A" 在光标所在行尾插入"o" 在当前行的下一行插入新的一行"O" 在当前行的上...
  • ################################################vim模式编辑模式输入模式末行模式################################################vim一,打开文件vim +#:打开文件,并定位于第#行vim +:定位最后一行vim +/...
  • 显示行号|选择喜欢的代码风格默认GitHubDuneLakeSidePlateauVibrantBlueEightiesTranquilVim(ViImproved)编辑器是功能强大的跨平台文本文件编辑工具,继承自 Unix 系统的 ...vim 命令安装:-bash: vim: command not...
  • 退出命令是,按ESC键 跳到命令模式,然后输入:q(不保存)或者:wq(保存) 退出。 更多退出命令: :w 保存文件但不退出vi :w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推出vi ...启动vim 在命令行窗口
  • 我们在很多需要修改服务器内数据的时候,需要用到vim这个命令,对新手来说,看起来挺烦挺复杂的,今天云测速整理一些常用的vim命令给大家,希望对大家有用。vi/vim的几种模式正常模式:可以使用快捷键命令,或按:...
  • 在终端可以使用vim命令来直接编辑文件内容。vim,也可以叫做vi。vim有三种模式:命令模式、输入模式、底线命令模式。命令模式vim 文件名 进入命令模式,vim也可以写成vi。如果文件不存在,先创建再打开,如果文件已...
  • 一、安装虚拟机(CentOS) ... (1)一定要在vi的命令模式下(在编辑模式下按etc键)     (2)编辑模式下i当前光标所在的位置 三、修改ip地址(当前虚拟机的ip地址):vi /etc/sysconf
  • vim命令

    2021-01-16 07:07:24
    vi/vim 分为三种模式,命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。使用 vi/vim 可以快速编辑文件而无需使用类似文本编辑器软件,特别是在生产环境 Linux 服务器上进行操作。...
  • 容器内输入以下命令: apt-get update apt-get install vim 再次使用命令即可
  • Linux中vim是从vi发展出来的一个文本编辑器,该编辑器具有代码补完、编译及错误跳转等方便编程的功能,并且在程序员中被广泛使用,而vi是老式的文本处理器,不过功能也已经很齐全了。Vim是从 vi 发展出来的一个文本...
  • vim编辑命令

    2021-01-27 13:44:59
    一、启动vim: 在命令行窗口中输入以下命令即可: 1.Vim 直接启动vim 2.Vim filename 打开vim并创建名为filename的文件 二、文件命令 1.打开单个文件 vim file 2.同时打开多个文件 vime file1 file2 ...
  • 这样就无法高效的编辑了,要想达到高效编辑最好能够将光标马上定位到你需要的位置,vim就是可以满足你这样需求的一款编辑器,本节就要讲一下vim快速移动定位的一些操作命令。下面的操作都是在Normal Mode下的操作,...
  • Linux vim退出命令(保存与不保存)

    千次阅读 2020-12-29 13:44:03
    按ESC键 跳到命令模式,然后输入: :w - 保存文件,不退出 vim :w file -将修改另外保存到 file 中,不退出 vim :w! -强制保存,不退出 vim :wq -保存文件,退出 vim :wq! -强制保存文件,退出 vim :q -不保存文件,...
  • 常见Linux命令##文件复制,移动,删除,创建复制:cp -v 源文件路径 目标文件路径移动:mv -v 源文件路径 目标文件路径删除:rm -v 文件路径rmdir -v 文件夹路径(文件夹要为空)rm -rv 文件夹路径(递归删除文件夹及其...
  • 按一下dd删除一行 先按5再按dd 删除5行 dd相当于剪切的功能,你需要换位置按p就又复制回来了。 大写的GG直接跳到最后一行,小写的gg到首行 我们也可以在行之间进行跳转 按shift+$就跳到行末了 按0就跳到行首了 ...
  • Linux命令:vi | vim命令

    2021-05-09 03:36:00
    文本编辑器格式:vim [options] [file ..]说明:如果file存在,文件被打开并显示内容,如果文件不存在,当编辑后第一次存盘时创建它[options]常用选项:vim +[num] :直接进入到编辑文挡的第num行vim + :直接进入到...
  • 我试图在我的Macvim上安装Vundle。我遵循以下link获得Vundle。...Vim错误E492 - 不是编辑器命令:PluginInstallE492: Not an editor command: PluginInstall我的.vimrc包含以下内容:1 set nocompatible "https:...
  • 简单介绍vi与vim的区别以及常用命令一、vi与vim的区别1、多级撤消在vi编辑器中,按u只能撤消上次命令,而在vim里可以无限制的撤消。2、易用性vi编辑器只能运行于unix中,而vim不仅可以运行于unix,还可用于windows、...
  • vim下的查找命令

    2021-08-24 22:15:21
    linux下vim 查找命令: /text --查找text, 按n查找下一个, N查找上一个 ?text --查找text(反向查找), 按n查找下一个, N查找上一个 */# --查找光标当前的单词,相当于/text :set ignorecase --查找忽略大小写 :...
  • VIM 底线命令模式

    2020-12-22 10:51:49
    :wq (小写)保存并退出vim:w 文件名1 将文件另存为文件名1:ZZ (大写)保存文件并退出,相当于:wq:wq! (小写)文件所有者强制保存只读文件,如果不是文件所有者进行此操作,不能成功:q! 退出不保存文件显示行号:set nu(mber...
  • centos找不到vim命令

    2021-03-07 17:17:07
    linux系统执行vim命令时,提示centos -bash : vim:command not found这个时候需要检查vim编辑器是否安装:输入rpm -qa|grep vim命令,如果vim被正确的安装,会返回下面的提示。[root@ethink ethink_Env]# rpm -qa|...
  • 下面是收集的vim用法,当在vim里面要实现退出,首先要做的是按【Esc】,然后再输入【:wq】一、一般模式:删除、复制与粘贴类命令x,X x为向后删除一个字符,X为先前删除一个字符nx(n代表数字) ...
  • VIM退出命令详解【编辑退出命令

    千次阅读 2021-08-31 17:05:07
    退出Vim命令ZZ和ZQ ZZ:退出Vim;如果文件被修改,则先保存文件再退出,程序员们的常用命令一定记住哦。(等价于 :x 命令) ZQ:强制退出Vim,不保存任何修改。小心使用用,要不你敲的字可能一会就没有了哦。白忙一...
  • Linux 系统会内置vi文本编辑器,vim相当于vi的增强版,二者使用方式差不多。...命令模式 在这个模式中,可以输入相关指令,完成读取,保存,替换,离开,显示行号等操作。 举例说明 1.新建一个hellowo

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 529,610
精华内容 211,844
关键字:

命令vim