fd and ag (or rg) just do what I expect them to, I don't need to think about how to use them. Both find and grep's syntax trip me up, even after 20 years of using them.
It's written by the same developer as fd
The interface is nearly 1:1 with `ag` (and the older `ack`). One notable difference is that ag enables `--smart-case` by default, so it treats an all-lowercase pattern as case-insensitive, while `rg` doesn't, you need an explicit `rg -i`. (or set it in a config file, but I'd rather not learn defaults that won't work out-of-the-box on other machines).
echo '{"some_json": "value"}' | python -m json.tool ... | python -m json.tool | python -m pygments -l json
or, path permitting, ... | python -m json.tool | pygmentize -l json
[1] https://pygments.org python -m http.server 12345
serves files in the current directory over HTTP on port 12345.I'll stop now, but I love how Python module developers add these "hidden" command-line features.
P.S.: You can — and, at this point in history, probably should — s/python/python3/ in all these examples.