ripgrep recursively searches directories for a regex pattern while respecting your gitignore (by BurntSushi)


Basic ripgrep repo stats
9 days ago

BurntSushi/ripgrep is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.

Ripgrep Alternatives

Similar projects and alternatives to ripgrep
  • GitHub repo bat

    A cat(1) clone with wings.

  • GitHub repo coreutils

    Cross-platform Rust rewrite of the GNU coreutils

  • GitHub repo exa

    A modern replacement for ‘ls’.

  • GitHub repo rust

    Empowering everyone to build reliable and efficient software.

  • GitHub repo fzf

    :cherry_blossom: A command-line fuzzy finder

  • GitHub repo tmux

    tmux source code

  • GitHub repo fd

    A simple, fast and user-friendly alternative to 'find'

  • GitHub repo zsh-autosuggestions

    Fish-like autosuggestions for zsh

  • GitHub repo zsh-syntax-highlighting

    Fish shell like syntax highlighting for Zsh.

  • GitHub repo hyperfine

    A command-line benchmarking tool

  • GitHub repo cosmopolitan

    fast portable static native textmode containers

  • GitHub repo ripgrep-all

    rga: ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc.

  • GitHub repo sd

    Intuitive find & replace CLI (sed alternative)

  • GitHub repo regex

    An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.

  • GitHub repo min-sized-rust

    🦀 How to minimize Rust binary size 📦

  • GitHub repo alacritty

    A cross-platform, OpenGL terminal emulator.

  • GitHub repo micro-editor

    A modern and intuitive terminal-based text editor

  • GitHub repo clap-rs

    A full featured, fast Command Line Argument Parser for Rust

  • GitHub repo Rusoto

    AWS SDK for Rust

  • GitHub repo shake

    Shake build system

NOTE: The number of mentions on this list indicates mentions on common posts. Hence, a higher number means a better ripgrep alternative or higher similarity.


Posts where ripgrep has been mentioned. We have used some of these posts to build our list of alternatives and similar projects - the last one was on 2021-04-12.
  • Guide on cross-compilation & publishing binaries? | 2021-04-12
  • Il data breach di Facebook: un resoconto e come difendersi | 2021-04-06
  • Alternative to grep| less
    So clearly ripgrep's memory usage isn't scaling to the size of the file. But ZOMG, it uses more memory than GNU grep! In reality, both programs use a very tiny amount of memory. In fact, in some real world use cases, ripgrep may actually use less memory than GNU grep:
    Try ripgrep, it's a faster(fastest?) variant grep. It's syntax is generally more concise, and has many nice features like ignoring hidden files, looking in specific filetypes, and preprocessing files before searching them.
  • 7 Tools I Use Every Day at Work | 2021-04-01
    I’m told ripgrep is also a good grep replacement, but I haven’t tried it.
  • [Windows] Software to FAST search certain text/string inside files (.txt, .json, .pdf, etc) | 2021-03-30
    If you don't mind using the command-line, for searching strings in plaintext files (incl. json), ripgrep is very fast at that. ripgrep-all is said to add the ability to search in PDF files, but you might be better off with a solution that indexes them instead. I have no suggestions there.
  • Modern alternatives to some unix tools | 2021-03-24
  • Regex – NFA – minimal DFA – LLVM IR, interactive visual D3 GraphViz demo | 2021-03-23
    > PCRE is hardly used "everywhere".

    The topic under discussion was extensions that make regex non-regular (as popularised by Perl and libpcre), not PCRE per se. Per this site's rules, I assume good faith and that you simply misunderstood me and did not deliberately put up and topple this straw-man.

    Adoption of non-regular extensions is overwhelmingly larger than adoption of the opposite.

    1. These non-regular extensions can be found in Java/Kotlin/Scala/etc., Javascript, Perl, PHP, Python, Ruby, C#, R, Swift, Matlab, Julia, Haxe, Ocaml and literally dozens of other languages on various popularity charts, and as a first pick option in C, C++ and Lua. Go and Rust are the exemptions to the rule! There are millions of pieces of software written using these which one can't even see because they are not public.

    2. Programmers and end users want features and power much more than they want determinism. (Performance is a red herring because the vast majority of the time, performance is good enough, or even identical to non-extended.) That's why ripgrep and GNU grep and rspamd have them.

    3. A factual survey where libraries are used. This will be invisible for the aforementioned programming languages because they have built-in regex, but simply libpcre alone versus re2 and libhs shows clearly which paradigm is dominant and which is a niche.

    libpcre: ag, apache2, blender, clamav, cppcheck, exim, fish, git, gnome-builder, godot, grep, haproxy, kodi, libvte, lighttpd, lldb, mariadb, mongodb, mutt/neomutt, mysql-workbench, nginx, nmap, pam, postfix, Qt5/Qt6, rspamd, selinux, sway, swig, syslog-ng, systemd, uwsgi, uwsgi, varnish, vlc, wget, zsh … … … and 110 more.

    re2: bloaty, chromium/chromedriver/qtwebengine, clickhouse, libgrpc

    libhs: libndpi, rspamd

  • Things move on. What better commands have you found than the ones that you learned at first? it's like grep, but made in rust.
  • Ripgrep is faster than {grep, ag, Git grep, ucg, pt, sift} (2016) | 2021-03-15
    I wrote the blog post before ugrep came out.

    But I ran the benchmarks in the blog post a few months ago and included ugrep:

    The full set of raw commands executed:

    I've also contested ugrep's benchmarks in a few ways and have had unproductive conversations with ugrep's author:

  • Speed of Rust vs. C | 2021-03-12
    Why would you guess about how much C or Rust code that ripgrep contains when you could very quickly look?
  • Vim telescope live grep | 2021-03-10
    By default rg will ignore files that are .gitignored so if you’re ignoring node modules it shouldn’t search it.
  • Debian Running on Rust Coreutils | 2021-03-09
    Make a config file for ripgrep and enable it. | 2021-03-09
    Thanks for the kind words. I don't know much about openVMS. I read your profile bio. I'm not sure I quite grok all the details, but I would like to caution you: ripgrep is still, roughly speaking, a "grep." That is, it exhaustively searches through corpora. While it has some "smart filtering," it's not going to do much better than other tools when you're searching corpora that don't fit into memory.

    I do have plans to add an indexing mode to ripgrep[1], but it will probably be years before that lands. (I have a newborn at home, and my free-time coding has almost completely stopped.)

    [1] -