VIM在文件夹中查找

在vim中提供2中方法来在其他文件或者文件夹中搜索字符串,第一种是vimgrep还有一种是grep。

如果只是在当前打开的文件中查找字符串的,使用

:?

后面加上想要搜索的字符串就可以。

这里要解决的是在别的文件中,也许这个文件还没有打开,或者需要在多个文件中操作,比如在当前文件夹下面所有.c的文件中查找,或者在莫个文件夹中查找。这些情况下,我们可以使用imgrep或者grep。这里只介绍vimgrep。

这是个vim的内部命令,因为可以在vim内部直接使用,

:vimgrep

这个命令还可简写为vim

:vim

用例1 
在当前文件夹下面所有.c文件中查找字符串 classA

:vimgrep /classA/gj ./*.c

解释一下:

g: 如果一行中出现多处,只显示一次,没有g就会出现多次

j: 只是列出所有匹配的行,没有j那么就会跳去第一个匹配的行

用例2 在当前文件夹及其子文件夹下面查找字符串classA

:vimgrep /classA/gj **/*.*

搜索完毕后可以使用copen或者cw命令来打开搜索的结果。使用jk来移动选中行,回车可以跳到对应的文件。

copen后面可以指定窗口的高度。

注意当去到搜到到的文件后,当前的窗口会被该文件覆盖,那么怎么回到原来的文件,

ctrl+^

更多的信息可以使用

:help vimgrep

来查看。

时间: 2024-10-12 16:24:54

VIM在文件夹中查找的相关文章

在指定文件夹中查找指定关键字,并输出关键字包括的次数

因为要查看相关统计代码是不是部署多了..SO.... 是把网上的脚本改了一下,增加了次数输出和判断.. 并且不用交互式输出,直接在命令后面接关键字和指定目录... #!/bin/bash #find files contains a keyword #write by xiaojing.zhao #2012.12.14 echo -e "\nThis is a script to find all the files in a specified path contains a keyword!

(文档)Shader.Find (在编译时,只包含那些使用中的shader或位置在"Resources"文件夹中shader)

Shader.Find 查找 static function Find (name : string) : Shader Description描述 Finds a shader with the given name. 查找名为name的着色器. Shader.Find can be used to switch to another shader without having to keep a reference to the shader. name is the name you ca

遍历文件夹中所有文件(C++)

想要实现对 文件夹 中 文件信息 的 查找与路径获取,需要用到 头文件 #include "io.h" 中的 一个结构体 和 三个函数 1. 结构体 struct _finddata_t 用来存储文件各种信息. struct _finddata_t { unsigned attrib;//文件的属性 time_t time_create;//文件的创建时间 time_t time_access;//文件最后一次被访问的时间 time_t time_write;//文件最后一次被修改的时

使用c#将多个文件放入文件夹中,并压缩下载

ZipClass.cs  这个是一个压缩文件的类,可直接复制使用,使用到的命名空间是 using System.IO;using ICSharpCode.SharpZipLib;using ICSharpCode.SharpZipLib.Checksums;using ICSharpCode.SharpZipLib.Zip; 请自行网上查找此压缩程序集下载使用 public class ZipClass { #region ZipFileDictory /// <summary> /// 递归

C#遍历指定文件夹中的所有文件(转)

原文链接:http://www.cnblogs.com/qianqianfy/archive/2009/07/08/1518974.html 1. C#遍历指定文件夹中的所有文件 DirectoryInfo TheFolder=new DirectoryInfo(folderFullName); //---遍历文件夹 foreach(DirectoryInfo NextFolder in TheFolder.GetDirectories()) this.listBox1.Items.Add(Ne

打印文件夹中所有dll输出表中函数名称

今天逆向破解firefox浏览器中保存的账号及密码,因为firefox对账号的信息不断的提高安全性,所以之前破解中需要用到的一个导出函数不知被封装到那个dll中了,但firefox安装目录下又有许多的dll,一个一个的使用loadPe工具去查找太麻烦了,于是就编写了一个小程序去遍历文件夹下所有的dll的导出表中的函数名称并打印出来. 头文件: #include <Windows.h> #include <stdio.h> #include <imagehlp.h> #p

用字符流实现每个文件夹中创建包含所有文件信息的readme.txt

1 package com.readme; 2 3 import java.io.BufferedWriter; 4 import java.io.File; 5 import java.io.FileWriter; 6 import java.io.IOException; 7 import java.text.SimpleDateFormat; 8 import java.util.Date; 9 import java.util.Scanner; 10 11 /** 12 * @autho

C#读取指定文件夹中的所有文件

C#遍历指定文件夹中的所有文件 DirectoryInfo TheFolder=new DirectoryInfo(folderFullName);//遍历文件夹foreach(DirectoryInfo NextFolder in TheFolder.GetDirectories())   this.listBox1.Items.Add(NextFolder.Name);//遍历文件foreach(FileInfo NextFile in TheFolder.GetFiles())   thi

SQL Server Replication的分发服务器的快照文件夹位置查找

原文:SQL Server Replication的分发服务器的快照文件夹位置查找 SQL Server分发服务器配置中,需要配置快照文件夹(Snapshot Folder),用于存储发布的数据和架构文件的工作目录,那么如何查找当前SQL Server数据库服务器的分发服务器的快照文件夹位置呢? 如果配置了具体发的发布和订阅,那么可以在对应的发布的属性->快照文件里面查看,如果还没有配置具体的发布和订阅,这个需要怎么查看呢? 今天恰巧遇到了这样的问题,研究了一下,其实这些值保存在表msdb.db