UNIX: Difference between revisions
Andre Castro (talk | contribs) No edit summary |
Andre Castro (talk | contribs) |
||
Line 13: | Line 13: | ||
* it was '''time-sharing''' system, allowing for mutiples users to login to the machine <code>ssh username@machineIP</code> | * it was '''time-sharing''' system, allowing for mutiples users to login to the machine <code>ssh username@machineIP</code> | ||
* included the '''shell:''' a program which performs command line interpretation <code>whoaim</code> <code>pwd</code> | * included the '''shell:''' a program which performs command line interpretation ** <code>whoaim</code> | ||
** <code>pwd</code> '''p'''rint '''w'''orking '''d'''irectory - where am I? | |||
** <code>date</code> | |||
** <code>users</code> print the user names of users currently logged in to the current host | |||
** <code>history</code> commands' history | |||
* tree-structured file system | * tree-structured file system | ||
** <code>tree ~/</code> list contents of home (~ == /home/username ) in a tree-like format | ** <code>tree ~/</code> list contents of home (~ == /home/username ) in a tree-like format | ||
Line 23: | Line 27: | ||
Others emerged from the development and use of the system and crystallized into the ''Unix Philosophy'': | Others emerged from the development and use of the system and crystallized into the ''Unix Philosophy'': | ||
* Write programs that do one thing and one thing well <code>ls</code> lists files in a directory <code>cat</code> outputs content of file <code>wc</code> counts number of words in file | * '''Write programs that do one thing and one thing well''' | ||
* Write programs that work together | ** <code>ls</code> lists files in a directory | ||
** <code>echo "hello UNIX world"|sed 's/o/0/g'|sed 's/e/3/g'| sed 's/l/1/g'|figlet</code> | ** <code>cat</code> outputs content of file | ||
* Write programs that handle text streams, because that is a universal interface | ** <code>wc</code> counts number of words in file | ||
* '''Write programs that work together''' | |||
** <code>echo "hello UNIX world" | sed 's/o/0/g' | sed 's/e/3/g' | sed 's/l/1/g' | figlet</code> | |||
* '''Write programs that handle text streams, because that is a universal interface''' | |||
** <code>man -a intro | espeak</code> Linux introduction to user commands. | ** <code>man -a intro | espeak</code> Linux introduction to user commands. | ||
==Distribution of UNIX== | |||
man pages | man pages | ||
Line 33: | Line 45: | ||
every thing is a file | every thing is a file | ||
Forking of UNIX | Forking of UNIX |
Revision as of 14:32, 24 October 2016
Beginnings of Unix
After being withdrawn from project Multics Ken Thompson and Dennis Richie started writing UNIX in 1969 at AT&T Bell Labs.
Ken Thompson and Dennis Richie found themselves at the Bell Labs without much hardware or funding.
Having to resort to discarded hardware and influenced by their experience of Multics, they start developing UNIX, a super slim operating system, that could run in hardware available and yet include some of appealing features of Multics.
Features of UNIX
Some of the features of UNIX were influenced from Multics,
- it was time-sharing system, allowing for mutiples users to login to the machine
ssh username@machineIP
- included the shell: a program which performs command line interpretation **
whoaim
pwd
print working directory - where am I?date
users
print the user names of users currently logged in to the current hosthistory
commands' history
- tree-structured file system
tree ~/
list contents of home (~ == /home/username ) in a tree-like formatls ~
list files and directories in your user home ( ~ == /home/username )ls .
list files and directories in current directory ( . == current dir )ls ../
list files and directories in parent directory ( . == current dir )ls foo/
list files and directories in child foo/ directoryls /
list files and directories in root ( / == root )
Others emerged from the development and use of the system and crystallized into the Unix Philosophy:
- Write programs that do one thing and one thing well
ls
lists files in a directorycat
outputs content of filewc
counts number of words in file
- Write programs that work together
echo "hello UNIX world" | sed 's/o/0/g' | sed 's/e/3/g' | sed 's/l/1/g' | figlet
- Write programs that handle text streams, because that is a universal interface
man -a intro | espeak
Linux introduction to user commands.
Distribution of UNIX
man pages
every thing is a file
Forking of UNIX
- Linux distributions
- package managers: aptitude
- Mac OsX
- homebrew http://brew.sh/