Lots of programs in the Unix/Linux tend to follow the philosophy of "do
one thing, do it well", and they are often designed to work together to
do complicated jobs. Therefore, if we know what tools are available out
there, we can break down the tasks into a few steps and use the most
suitable tool for each of them. Usually, finding a right tool for the
work in hand might well worth the time, if (that's a big if) you can
easily find one and learn to use it quickly.
Some tools we use
almost everyday: ls, cd, cp, mv, rm, pwd, find, grep, alias, locate, history, ... I am familiar with
their common usage, at least for the basic ones. For those advanced
cases, I know where to look for help quickly.
Of course there are also powerful tools in my arsenal, such as Sed, Awk, and Emacs. I can do a lot of things with them. But there is still times when some of the following (small) tools come in handy. Unfortunately, since they are not used as often, I tend to forget their usage and need to dig into the details of manual pages, which is less desirable. So I'll try to give some typical examples of how
they can be used.
cut - remove sections from each line of files
paste - merge lines of files
sort - sort lines of text files
tr - translate or delete characters
tac - concatenate and print files in reverse
wc - display a count of lines, words and characters in a file
uniq - report or filter out repeated lines in a file
......
I'll put the details in my
wiki. The directly link is
here.