4 ms·
I switched to `ack` in 2017 because it handles recursive searches better. I didn't bother switching to `ag` when it came around because of having to retrain.
by sshine 1y ago
I switched to `ack` in 2017 because it handles recursive searches better.
I didn't bother switching to `ag` when it came around because of having to retrain.
But eventually I did switch to `rg` because it just has so many conveniences.
I even switched to `fd` recently instead of `find` because it's easier and less typing for common use-cases.
I've been using the terminal since 1997, so I'm happy I can still learn new things and use improved commands.
- dotancohen 1y agoSell me on fd. I occasionally use find, mostly with the -name or -iname flags.
- rkomorn 1y agoIt feels nearly instant by comparison to find. That's been enough for me.
- lawn 1y agoYou don't have to type -name for the 1000th time.
- dotancohen 1y agoThanks. For other people, on Ubuntu install the `fd-find` package. The executable is named `fdfind` (no dash).
- ahartmetz 1y agoIn my case, I am still using ag because rg doesn't seem to be better enough to switch. What's the big deal with rg vs ag? I had a similar thing with bash vs zsh before I learned about oh-my-zsh. Nushell also seems attractive these days... the good stuff from PowerShell in a POSIX-like shell.
- burntsushi 1y agoripgrep is a lot faster (which you might only notice on larger haystacks), has many fewer bugs and is maintained.
- ahartmetz 1y agoag is plenty fast (gigabytes in a fraction of a second) for me - I'd switch in a heartbeat if that wasn't so. Any bugs, hm, I guess I just haven't run into them. Thanks for the reply though! I realize who replied here ;)
- burntsushi 1y agoLook at ag's issue tracker. There are some very critical bugs. You might be impacted by them and not even know it. As for perf, it's not hard to witness a 10x improvement that you'll actually feel. On my checkout of the Linux kernel: $ (time rg -wi '\w+(PM_RESUME|LINK_REQ)') | wc -l real 0.114 user 0.547 sys 0.543 maxmem 29 MB faults 0 444 $ (time ag -wi '\w+(PM_RESUME|LINK_REQ)') | wc -l real 0.949 user 6.618 sys 0.805 maxmem 65 MB faults 0 444 Or even basic queries can have a pretty big difference. In my checkout of the Chromium repository: $ (time rg Openbox) | wc -l real 0.296 user 1.349 sys 1.950 maxmem 71 MB faults 0 11 $ (time ag Openbox) | wc -l real 1.528 user 1.849 sys 8.285 maxmem 29 MB faults 0 11 Or even more basic. You might search a file that is "too big" for ag: $ time ag '^\w{42}$' full.txt ERR: Skipping full.txt: pcre_exec() can't handle files larger than 2147483647 bytes.
- EliMdoza 1y agobeen using both for many years now, have never ran into issues or even been able to tell any difference in speed, let alone 10x what I notice unfortunatly, is that I often miss search results with rg becuase I forget I need to pass the additional -i flag. this has shaped my perception of rg - extra focus on performance, sub-optimal ux