• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jdz
V2EX  ›  程序员

用了 ripgrep 后,完全接受不了 grep 了,大点的目录 grep 跟不能用差不多,而 rg 却很轻松搞定

  •  
  •   jdz · Oct 20, 2021 via Android · 5501 views
    This topic created in 1840 days ago, the information mentioned may be changed or developed.
    有时候感觉速度差了不止一个数量级
    22 replies  •  2021-10-21 04:54:11 +08:00
    liuxu
    liuxu
    Oct 20, 2021
    1
    那是自然,rust 强力支撑
    liuxu
    liuxu
    Oct 20, 2021❤️9
    2
    但是不应该对用了几十年的老工具抱有轻蔑的态度,毕竟互联网能发展起来它们是基石
    jdz
    jdz
    OP
    Oct 20, 2021 via Android
    3
    @liuxu 不是轻蔑吧,没有态度,就是使用的一种感觉
    jdz
    jdz
    OP
    Oct 20, 2021 via Android❤️3
    4
    @liuxu 感觉跟 rust 关系不大,应该是软件重新设计了,用 c 或 cpp 应该一样可以实现这个速度,只是没人做
    wellsc
    wellsc
    Oct 20, 2021
    5
    sliver searcher 也不错
    liuxu
    liuxu
    Oct 20, 2021
    6
    @jdz rust 强力支撑不是我说的,是作者说的,原因是用了 rust 正则引擎
    dragondove
    dragondove
    Oct 20, 2021
    7
    grep 的性能其实也很好,应该是遇到奇怪的 edge case 了。如果没有正则需求的话 fgrep (即 grep -F )差不多是速度最快的工具(之前无聊自己做过测试,被性能震惊了,然后看了作者 mailling list,是基于 BM 算法优化过来的),有正则需求可以直接用 grep -P,只用 grep 的情况比较少。性能对比的话很多工具的 github repo 都有提供对比结果,贴个 rg repo 里的一个 benchmark https://github.com/BurntSushi/ripgrep/blob/master/benchsuite/runs/2020-10-14-archlinux-frink/summary
    github2020
    github2020
    Oct 20, 2021
    8
    学习了,后面去研究下这个 ripgrep
    superrichman
    superrichman
    Oct 20, 2021
    9
    配合 fzf 使用更香
    wangxn
    wangxn
    Oct 20, 2021 via Android❤️1
    10
    Rust 并没有什么黑科技,纯粹是新作者新团队新代码新依赖库高度优化的结果,换成 C++这些确实也可以做到,只是没人去做罢了。
    jedihy
    jedihy
    Oct 20, 2021
    11
    已经是必装软件了,主要用来看日志。
    e7
    e7
    Oct 20, 2021
    12
    @wellsc 你撤回,让我说[狗头]
    FightPig
    FightPig
    Oct 20, 2021
    13
    一切可以用 rust 重写的,都在重写
    GPLer
    GPLer
    Oct 20, 2021
    14
    @FightPig 一切能用 javascript 实现的,最终都会用 javascript 实现。
    wolfie
    wolfie
    Oct 20, 2021
    15
    @GPLer #14
    isnum iseven isodd
    vance123
    vance123
    Oct 20, 2021
    16
    第一反应是楼主太夸张了,然而试用了一下直呼 woc
    btchinainfo
    btchinainfo
    Oct 20, 2021
    17
    学习成本如何?
    boboliu
    boboliu
    Oct 20, 2021
    18
    确实,之前试用 rg 之后现在已经在到处装 rg 了
    c8c
    c8c
    Oct 20, 2021
    19
    fzf 也很方便。也可以试试
    meetcw
    meetcw
    Oct 20, 2021❤️1
    20
    很多基础工具都有 rust 重写的版本了

    ls -> exa
    find -> fd
    cat -> bat
    du -> dust

    体验都不错。就是每个作者对工具的命名都有自己的想法。。。
    yhrzpm
    yhrzpm
    Oct 21, 2021
    21
    嫌慢的话加个 parallel 命令咋样
    bao3
    bao3
    Oct 21, 2021 via iPhone
    22
    grep 加个参数 P 是不是就可以了……
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1468 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 22:03 · PVG 06:03 · LAX 14:03 · JFK 17:03
    ♥ Do have faith in what you're doing.