SRK's UNIX Tool Chest

Unix is an incredible operating system. The philosophy was inverted (for its time): provide basic utilities, a simple structure (everything is a file) and simple interfaces (e.g. a file is records with \n and that is it) and then let users develop comples packages.

I am always on the lookout for "real life" problems that can be undertaken with Unix. If you like the examples here then read the rest. [Do not worry about the complexity of the examples. You can learn all that sort of stuff in a few hundred hours.]

The set of notes are under development. Every week you should see a few new modules and also notes on basic unix and bash programming. I would be happy to have you on my mailing list (the best way to learn is to teach). Meanwhile, I request that if you are reading this URL then please provide me with real-life problems. I will work it out and post the solutions here.

In order to get motivated you may want to first check out some handy tools first.

Unix tools

  1. cp copy files (for future tools)   notes
  2. ls list directory   notes
  3. tac reverse sequence of lines in a file   notes
  4. wc Count the number of lines, words, characters   notes
  5. iconv get rid of non-ASCII characters  notes
  6. od octal dump of file   notes
  7. {} (brace expansion) Generate numerical or alphabetic sequence   notes
  8. nl Number lines of existing files   notes
  9. seq Generate alpha-numeric sequences   notes
  10. jot random numbers & alphanumeric sequences   notes
  11. cut Extract characters and fields   notes
  12. paste Paste columns side by side   notes
  13. tr translate (substitute, delete, squeeze)   notes
  14. sort sort columns   notes
  15. uniq identify unique lines in a file, also histogram   notes
  16. join Join two files on common (sorted) key   notes
  17. find find files   notes
  18. xargs Feed argument list to a utility   notes
  19. cat output lines sequentially   notes
  20. info information, quickly   notes

Bash


Guru99 (tutorial well suited to beginners; well laid out)
Computer Hope (understandable man pages)
Sanfoundary (well organized)
Geek Stuff Gems here and there
Unix School (nice examples; not easy to search, browse)
Unix tools ranked by votes
geek tips!