Either built-in tools, or those that follow the UNIX philosophy.<p>My favorite hidden gems in a base UNIX install are `tac` (print lines in reverse order) and `tr` (character substitutions).
Most: grep, find, cat, sort, tail, wc, ls, sudo, pgrep.<p>Interesting: comm: <a href="https://linux.die.net/man/1/comm" rel="nofollow">https://linux.die.net/man/1/comm</a><p><i>Compare sorted files FILE1 and FILE2 line by line.<p>With no options, produce three-column output. Column one contains lines unique to FILE1, column two contains lines unique to FILE2, and column three contains lines common to both files.<p>-1
suppress column 1 (lines unique to FILE1)<p>-2
suppress column 2 (lines unique to FILE2)<p>-3
suppress column 3 (lines that appear in both files)</i><p>Weak: adduser/useradd (hard to non-interactive), chmod (could use file/dir filter with -R).<p>Least: systemctl, journalctl.
awk<p>(It's a guilty pleasure to write shell pipelines that use awk to write a shell script and then pipe that script in sh, I find it easier than looking up the bizzaro syntax for loops in bash in the info pages.)
find<p>My command to backup selected file using Tarsnap.
find /Users/xyz/Analysis -type f \( -name '<i>.pdf' -o -name '</i>.docx' \) -print0 | tarsnap --dry-run --no-default-config --print-stats --humanize-numbers -c --null -T-<p>This command file files ending with docx and pdf to back with tarsnap. The "-" following the "-T" option allows to pass the name using std-in via find command
perl-rename - rename is also good, but much more annoying to use for me as it doesn't use standard regex notation like perl-rename.<p>printf - shell is natively great at interpolation already, but having C-style printf formatting is often useful and echo has a lot of footguns
tr is surprisingly useful. If you're clever, the -c and -d flags can do good things.<p>wc is also useful, mostly as "wc -l". If you keep data in line oriented, human readable form, "wc -l" counts data items.
ctrl-r in bash tops my list, even if it's not quite what you are thinking of as a unix tool.<p>Probably the pipe itself would be my favorite next.<p>Then in no particular order:
tail, cut, xargs, wc, tr, grep, sort, uniq.