Unix is a family of computer operating systems that derive from the original Unix from Bell Labs.

This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.

Expect the output of every program to become the input to another, as yet unknown, program. Don’t clutter output with extraneous information. Avoid stringently columnar or binary input formats. Don’t insist on interactive input.


lsList files in the directory
cdChange directory
rmRemove file or directory(-r)
cpCopy file or directory(-r)
mvMove file or directory
wcCount words in file
manRead the manual
catReads content of files sequentially
mkdirMake new directory
dateShow system date
grepSearches text for matches of a regular expression
tailDisplays the tail end of a file or data


ls > fooSend output from ls into file foo
wc < fooReceive input from file foo into wc
ls | wcConnect output of ls into input of wc


-aAll, Append-nNumber
-bBuffer, Batch-oOutput
-cCommand, Check-pPort
-dDebug, Delete, Directory-qQuiet, Quit
-eExecute, Edit-rRecurse
-fFile, Force-sSilent
-hHeaders, Help-uUser
-iInteractive-vVerbose, Version

Found a mistake? Submit an patch to unix.