V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
youla
V2EX  ›  程序员

有没有什么软件,可以快速查询一个文件夹里所有文件(包含子文件夹)中的内容(字符串)?

  •  
  •   youla · 229 天前 · 5384 次点击
    这是一个创建于 229 天前的主题,其中的信息可能已经有所发展或是发生改变。

    伸手。

    第 1 条附言  ·  229 天前
    不是我要故意无视 grep/findstr 的,是我在看到 Filelocator 时就已经明确这才是我要的软件,而不是 command 。

    因为在做一个软件汉化,代码写得一言难尽,没考虑多语言的软件,字符串全在代码里,用 grep 、findstr 显然不行吧,累。
    第 2 条附言  ·  229 天前
    正确答案也是基于使用场景的正确答案,而不是仅仅有这个功能。
    第 3 条附言  ·  228 天前
    我说不要 command,还抬杠 command 是软件,无聊吧??
    第 4 条附言  ·  228 天前
    文件夹不知道多少层,底下也不知道多少文件,用 command 明显没有图形化界面的软件快速好吧。
    第 5 条附言  ·  223 天前
    我都说了不要 command,怎么又成我不会 command 了??还我抬杠??最底下的人搞笑吧??

    难道我说我不想吃饭都能成抬杠吗??对,我他妈的就是不会吃饭。

    张口就别人不会命令行,你是知道的真多啊!!
    82 条回复    2020-12-15 11:02:09 +08:00
    msg7086
        1
    msg7086   229 天前   ❤️ 3
    grep
    youla
        2
    youla   229 天前
    AnyTXT Searcher
    shortmund
        3
    shortmund   229 天前
    grep -r
    shlabc
        4
    shlabc   229 天前   ❤️ 2
    FileLocator windows 下很好用
    annielong
        5
    annielong   229 天前
    windows 下有一个 70 多 kb 的小工具,就像窗口就像 windows 内置的对话框一样,连名字都没有,可以查找 txt 和 htm 文件,
    youla
        6
    youla   229 天前
    @annielong 厉害了~~


    @shlabc 很好用~~~找到了!!
    Vegetables
        7
    Vegetables   229 天前
    emeditor 文件搜索
    vx812574395
        8
    vx812574395   229 天前 via iPhone
    notepad++了解下?
    victor97
        9
    victor97   229 天前 via Android
    findstr
    heyjei
        10
    heyjei   229 天前 via Android
    windows 10 自带的搜索不好用嘛
    Lemeng
        11
    Lemeng   229 天前
    搜索文件? everting?这类的
    fanyange
        12
    fanyange   229 天前 via iPhone
    Mac 下 devonthink
    vx812574395
        13
    vx812574395   229 天前 via iPhone
    bbdoc 了解下。electron 无处不在~
    bluehr
        14
    bluehr   229 天前
    我以为大部分人都是用 everything 呢,没想到还有这么多软件。
    shuianfendi6
        15
    shuianfendi6   229 天前
    ripgrep
    mcfog
        16
    mcfog   229 天前 via Android
    如果是代码的话,ag ( the silver searcher )
    GrayXu
        17
    GrayXu   229 天前
    grep -r 不需要装额外软件
    villivateur
        18
    villivateur   229 天前
    vscode
    Elethom
        19
    Elethom   229 天前 via iPhone   ❤️ 1
    @msg7086
    就猜会不会有人说 grep 。
    就猜会不会有人说了 grep 然后被 po 主无视。
    竟然都猜中了。
    zqz981
        20
    zqz981   229 天前
    grep -r -an "字符串"
    aloxaf
        21
    aloxaf   229 天前   ❤️ 1
    @Elethom
    确实,这种现象挺常见的。
    有时候在群里看到别人提问,明明已经有人给出了精准的回答,提问的人却和没看见一样。
    实在想不通为什么……
    charseer
        22
    charseer   229 天前
    ripgrep-all rga
    codyfeng
        23
    codyfeng   229 天前 via Android
    grep -r /any/path -e anyregex
    des
        24
    des   229 天前 via iPhone
    @Elethom 你们都没发现 po 用的是 windows 吗
    @aloxaf
    wjm2038
        25
    wjm2038   229 天前 via Android
    @des Windows 也可以下载啊。。
    user8341
        26
    user8341   229 天前
    @Elethom
    就猜会不会有人说 findstr
    就猜会不会有人说了 findstr 然后被众人无视
    竟然都猜中了。
    for windows
    darknoll
        27
    darknoll   229 天前
    vs
    vscode
    不都可以吗
    SuperMild
        28
    SuperMild   229 天前
    如果文件不多,并且只查纯文本,很多工具可以用。

    如果文件很多,或都还要查 word/ppt 里面的文字,那 windows 自带的搜索功能就非常强大了,有索引,并且可以自由选择建索引的文件夹。
    darknoll
        29
    darknoll   229 天前
    @bluehr everything 能搜文件内容?
    cmostuor
        30
    cmostuor   229 天前
    @darknoll everything 搜索文档有 content:<text> 搜索文本内容. 你试试
    youla
        31
    youla   229 天前
    @Elethom
    @aloxaf 主要是不属于我的应用场景吧,我要一个精准查找删除,用命令未免不是太麻烦,我也知道有 gnuwin32 。
    cmostuor
        32
    cmostuor   229 天前
    @darknoll 试了一下简直卡的要死还不如 用 win 版的 busybox 里面的 grep 来的快
    cmostuor
        33
    cmostuor   229 天前
    @vx812574395 npp 的作者有过反华言论 国内很多爱国的程序员基本不会用
    bluehr
        34
    bluehr   229 天前
    qwe
    @darknoll 能呀,在 everything -> 工具栏(搜索) -> 高级搜索 -> 文件内容中包含的单词或者短语。 用熟练后还可以直接 搜索框 content 搜索
    tinyRat
        35
    tinyRat   229 天前
    rigrep
    sorke
        36
    sorke   229 天前
    vscode
    YuTengjing
        37
    YuTengjing   229 天前
    vscode ctrl/cmd + shift + f
    bipy
        38
    bipy   229 天前
    vscode +1
    ScoutWang
        39
    ScoutWang   229 天前 via iPhone
    资源管理器搜索栏里:“内容:关键字”
    eggry
        40
    eggry   229 天前 via Android
    vscode+1 打开该文件夹,用楼上的 ctrl+shift+f,非常方便
    secondwtq
        41
    secondwtq   229 天前
    楼主主题就没写清楚,append 还是继续犯错误 ...

    你所谓的 "command",也是“软件”。或者要是按照 FSF 那群人的想法,所谓"command"是最基础的“软件”。网站、字体、硬件里的固件,都是“软件”
    LJ2010
        42
    LJ2010   229 天前
    utools
    akaayy
        43
    akaayy   228 天前
    @annielong 你勾起了我的兴趣?怎么找到它?有路径或者截图吗,文件名?
    hehe520347
        44
    hehe520347   228 天前
    findstr !!!
    Altar
        45
    Altar   228 天前
    counsel-rg
    psuwgipgf
        46
    psuwgipgf   228 天前
    @YuTengjing 才知道 vscode 还有这个功能,感觉很好用。
    msg7086
        48
    msg7086   228 天前
    建议下次可以把需求写得明确一些。
    我倒不是觉得被 offend 了,只是如果能写得明确一些的话,可以节约很多人的时间。
    不仅仅是你的时间,还包括回答者的。

    我自己做搜索,grep 和 vscode 都用,两个我觉得都挺好用的。
    laminux29
        49
    laminux29   228 天前
    这种搜索不能用基于分词搜索原理的软件,只能用基于 strfind 原理的,推荐 Ultra Edit 。
    autoxbc
        50
    autoxbc   228 天前
    自己用脚本语言写一个查找工具,就可以用高级语言描述你的查找要求,这个表现力碾压任何现成的查找软件
    xcstream
        51
    xcstream   228 天前
    idea 打开文件夹 自动索引
    LudwigWS
        52
    LudwigWS   228 天前 via iPhone
    @cmostuor 反正是免费软件🤔
    jakehu
        53
    jakehu   228 天前
    ack
    sujiahang
        54
    sujiahang   228 天前
    AnyTXT Searcher
    xchaoinfo
        55
    xchaoinfo   228 天前
    sublime text ctrl+shift+F 也可以搜索当前文件夹内的 文本,
    阅读源码经常这么用, 非常方便
    NewIPIsComing
        56
    NewIPIsComing   228 天前
    雖然我已經知道樓主並不是要找命令行程序,但我還是忍不住推薦一條現成的命令:
    #替換文件夾中所有文件中的 old_string 為 new_string
    grep -rl "old_string" . | xargs sed -i 's/old_string/new_string/g'

    # grep -rl: search recursively, and only print the files that contain “old_string”
    # xargs: take the output of the grep command and make it the input of the next command (ie, the sed command)
    # sed -i ‘s/old_string/new_string/g’: search and replace, within each file, old_string by new_string
    youla
        57
    youla   228 天前
    @secondwtq "快速查询一个文件夹里所有文件(包含子文件夹)中的内容(字符串)",如果是 command,子文件夹查找就已经和快速基本没什么关系了,你非要抬杠,我也没办法,你认为 command 是软件,也没什么问题,我只认图形界面的叫软件,因为我懒得抬杠。
    f6x
        58
    f6x   228 天前
    我只认图形界面的叫软件
    @youla 请把这句写在标题里. 不然很多人会点进来.
    youla
        59
    youla   228 天前
    @f6x 你改个表字段不就行了,我又没有权限改。
    LikeMurphy
        60
    LikeMurphy   228 天前
    vscode
    klgd
        61
    klgd   228 天前
    vscode+1
    celeron533
        62
    celeron533   228 天前
    windows 下可以试试 astrogrep,开源免费
    yorkw
        63
    yorkw   228 天前
    UltraEdit,不过是收费的
    raptor
        64
    raptor   228 天前
    》我只认图形界面的叫软件
    》 @youla 请把这句写在标题里. 不然很多人会点进来.

    我就是这样误入的。grep 这么简单的事情还要问。当然 GUI 的话 JB 家的 IDE 也都没问题。
    youla
        65
    youla   228 天前
    @raptor 你改个表字段不就行了,我又没有权限改。
    youla
        66
    youla   228 天前
    @raptor 顺便再补充一下,我也知道 grep,但是 grep 不快速啊??有 n 级路径,n 个要替换的字符串,怎么个快速法。
    golp2000
        67
    golp2000   228 天前
    3 楼就说了,grep 有参数可以搜索子目录,不影响的 @youla
    youla
        68
    youla   228 天前
    @golp2000 我只是说有很多内容要替换时,不快,我没有说不行。
    vx812574395
        69
    vx812574395   227 天前 via iPhone
    @cmostuor 是吗?对他不是很熟~不过工具确是蒸🉐好用!
    secondwtq
        70
    secondwtq   226 天前
    @youla #57 我在 #41 里面后面那些例子可能有些奇葩,本站是普遍认同“command”是“软件”,你就算不知道看到后面回复应该也知道了,然后还“只认图形界面的叫软件”,我觉得这才叫抬杠。

    另外,现有的“查找”这个需求,做得最快的,或者最快的之一,应该有那么一个或者几个命令行软件。命令行在“查找”这方面是不差的。“替换”的话,按规则的批量替换也是命令行最快,交互式的替换现在 GUI 做得也不错,使用 ncurses 界面的 vim 和 emacs 也能做。
    不过我寻思不论是主题还是 #57 都没说“替换”啊 ...
    youla
        71
    youla   226 天前 via Android
    @secondwtq 我都说了不要 command,你还说 command 的是软件不,是你抬杠是谁抬杠???难道 grep 不是 command ??
    secondwtq
        72
    secondwtq   226 天前
    @youla #71 我是提醒你本站是认为“command 属于软件”的,和你要不要 command 没有关系。

    再说了,你可以不认 command 是软件,我也不可以不认我“抬杠”啊。
    secondwtq
        73
    secondwtq   226 天前
    @secondwtq #72 s/不可以 /可以
    youla
        74
    youla   225 天前
    @secondwtq 你说 command 是软件没问题啊,但我重点已经说了不要 command,你还要怎么样?? command 是软件就不是 command 了???杠精????
    secondwtq
        75
    secondwtq   225 天前
    @youla 你看,你说你知道 command 是软件就可以了。那个七划的字就没必要说了。
    secondwtq
        76
    secondwtq   225 天前
    @youla #74
    > 你还要怎么样

    我之所以要强调(在本站的环境下)”command”是软件,就是因为本主题标题中要求的是“软件”,但是你实际需要的是“GUI 软件”(就不说具体需求是好久之后才 append 过去的了)。这导致大家不能理解你的实际需求,出现了一些没有实际帮助的回复。
    你现在知道了“command 是软件”,以后求助会更顺利一点。
    secondwtq
        77
    secondwtq   225 天前
    哦对了,我也没有权限”改个表字段”。
    youla
        78
    youla   225 天前
    @secondwtq 我只知道我 append 不要 command 时,你还没回复,我一直知道 command 是软件,我只是认为提问时我说软件可能大部分人会认为是带 GUI 界面的软件,我以后若是提问会说图形化界面的软件,防止杠精。
    youla
        79
    youla   225 天前
    @secondwtq 你当然没有权限,不然你还会来抬杠??不早就把我 delete 了
    secondwtq
        80
    secondwtq   225 天前
    @youla
    #78 ”提问会说图形化界面的软件”并不是为了“防止杠精”,而是为了问题能更好地被解决。
    #79 你为什么假设我会把你删除?
    这么说吧,如果我有权限的话,我会更改 V2EX 的算法,我对本站的主题排序算法不是很满意。比如隔壁 https://v2ex.com/t/734272 这个主题,点击率只有该主题的 4% 左右。
    raptor
        81
    raptor   224 天前
    @youla 你杠这么多还不如直接说你不会用 CLI
    youla
        82
    youla   223 天前
    @raptor 你就是个憨憨、是我杠吗??我不是说了不要 command 吗?谁不会??只是对我目前的东西而言没效率。
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2247 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:49 · PVG 20:49 · LAX 05:49 · JFK 08:49
    ♥ Do have faith in what you're doing.