It's fd, ncdu and sd (sed alternative) for me.
I’ve also been using bat and exa which are pretty good replacements for cat and ls, respectively.
nnn is also my go to file tree navigation / file moving tool these days too: https://github.com/jarun/nnn
# Colorify man (changes default $MANPAGER (less) settings)
export LESS_TERMCAP_mb='^[[01;31m'
export LESS_TERMCAP_md='^[[01;31m'
export LESS_TERMCAP_me='^[[0m'
export LESS_TERMCAP_se='^[[0m'
export LESS_TERMCAP_so='^[[01;44;33m'
export LESS_TERMCAP_ue='^[[0m'
export LESS_TERMCAP_us='^[[01;32m'It would be interesting to test the ~1.5GB of JSON the author uses for the benchmark against sed, but there are no details on how many files nor what those files contain.
When trying something relatively small and simple, sd appears to be slower than sed. It also appears to require more memory. Maybe others will have different results.
sh # using dash not bash
echo j > 1
time sed s/j/k/ 1
time -p sed s/j/k/ 1
time sd j k 1
time -p sd j k 1
Opposite problem as the sd author for me. For system tasks, more familiar with faster sed and awk than with slower Python and Javascript, so I wish that Python and Javascript regex looked more like sed and awk, i.e., BRE and occasionally ERE. Someone in the NetBSD core group once wrote a find(1) alternative that had C-like syntax, similar to how awk uses a C-like syntax. Makes sense because C is the systems language for UNIX. Among other things, most of the system utilities are written in it. If the user knows C then she can read the system source and modify/repair the system where necessary, so it is beneficial to become familiar with it. Is anyone is writing system utility alternatives in Rust that use a Rust-like syntax.