UNIX經驗分享
出自KMU Wiki
(修訂版本間差異)
| 在2008年4月2日 (三) 17:52所做的修訂版本 (編輯) Cch (對話 | 貢獻) ←上一個 |
當前修訂版本 (2008年4月2日 (三) 18:24) (編輯) (撤銷) Cch (對話 | 貢獻) |
||
| (4個中途的修訂版本沒有顯示。) | |||
| 第1行: | 第1行: | ||
| === History === | === History === | ||
| - | === Architecture === | + | UNIX [http://en.wikipedia.org/wiki/Unix 維基百科講 UNIX] |
| + | |||
| + | 1969 | ||
| + | |||
| + | UNIX 之父 Ken Thompson and Dennis Ritchie | ||
| + | |||
| + | [http://cm.bell-labs.com/cm/cs/who/dmr/picture.html Dennis Ritchie的網頁] | ||
| + | |||
| + | 1977 | ||
| + | |||
| + | BSD [http://en.wikipedia.org/wiki/BSD 維基百科講 BSD] | ||
| + | |||
| + | 1984 | ||
| + | |||
| + | [http://www.fsf.org 自由軟體基金會 Free Software Foundatiion (FSF)] | ||
| + | |||
| + | [http://www.gnu.org GNU 專案] | ||
| + | |||
| + | [http://en.wikipedia.org/wiki/Richard_Stallman 維基百科介紹自由軟體之父 Richard Stallman] | ||
| + | |||
| + | 1991 | ||
| + | |||
| + | [http://en.wikipedia.org/wiki/Linux 維基百科講 Linux] | ||
| + | |||
| + | [http://en.wikipedia.org/wiki/Linus_Torvalds 維基百科介紹 Linux 之父 Linus Torvalds] | ||
| + | |||
| + | === OS Architecture === | ||
| + | |||
| + | * hardware | ||
| + | * kernel | ||
| + | * file | ||
| + | * process | ||
| + | * shell | ||
| + | * user applications | ||
| === GUI === | === GUI === | ||
| 第27行: | 第60行: | ||
| [http://en.wikipedia.org/wiki/Unix_shell 維基百科條目 UNIX shell] | [http://en.wikipedia.org/wiki/Unix_shell 維基百科條目 UNIX shell] | ||
| - | ==== | + | ==== shells ==== |
| * sh | * sh | ||
| 第40行: | 第73行: | ||
| * csh: setenv/unsetenv | * csh: setenv/unsetenv | ||
| - | ==== | + | ==== pipeline | ==== |
| - | * | + | [http://en.wikipedia.org/wiki/Pipeline_%28Unix%29 維基百科講 UNIX pipeline] |
| + | |||
| + | * 將既有的小工具組合成新工具 | ||
| === Shell Script === | === Shell Script === | ||
| 第52行: | 第87行: | ||
| Please using man. | Please using man. | ||
| + | [http://www.freebsd.org/cgi/man.cgi FreeBSD Hypertext Man Pages] | ||
| + | |||
| + | * ls/cp/mv/rm/cat/more(less) | ||
| + | * date/cal | ||
| * grep | * grep | ||
| - | * sort | + | * sort/uniq |
| - | + | * head/tail | |
| - | * head | + | * sed/awk |
| - | + | * find/locate | |
| - | * awk | + | * ps/w/who/top/kill |
| + | * Ctrl-Z (suspend)/bg/fg | ||
| + | |||
| + | ... | ||
| === Editor === | === Editor === | ||
| 第68行: | 第110行: | ||
| === Networking === | === Networking === | ||
| + | |||
| + | TCP/IP | ||
| * ping | * ping | ||
| 第74行: | 第118行: | ||
| * telnet | * telnet | ||
| * ftp | * ftp | ||
| - | |||
| === Applications === | === Applications === | ||
當前修訂版本
目錄 |
[編輯] History
UNIX 維基百科講 UNIX
1969
UNIX 之父 Ken Thompson and Dennis Ritchie
1977
BSD 維基百科講 BSD
1984
自由軟體基金會 Free Software Foundatiion (FSF)
1991
維基百科介紹 Linux 之父 Linus Torvalds
[編輯] OS Architecture
- hardware
- kernel
- file
- process
- shell
- user applications
[編輯] GUI
GUI 是 Graphical User Interface 的縮寫,在講 GUI 之前,我們可以回顧一下電腦的歷史,然後思考一個問題: 為什麼會有 GUI?
電腦發明的早期 (1960 年之前),操作電腦的都有專門的人,而不是一般人:
在 2008 年時以打卡方式寫程式的人大多超過 50 歲。
直到 1960 年之後出現了終端機,有了鍵盤和螢幕。
但是 Command Line 讓一般使用者仍覺得電腦很難親近。
於是有了一連串的改進...
[編輯] Shell
[編輯] shells
- sh
- bash
- csh/tcsh
- ksh
- zsh
[編輯] environment variable
- sh: env/=/export
- csh: setenv/unsetenv
[編輯] pipeline |
- 將既有的小工具組合成新工具
[編輯] Shell Script
WikiBooks 講 Bourne Shell Scripting
[編輯] Command
Please using man.
- ls/cp/mv/rm/cat/more(less)
- date/cal
- grep
- sort/uniq
- head/tail
- sed/awk
- find/locate
- ps/w/who/top/kill
- Ctrl-Z (suspend)/bg/fg
...
[編輯] Editor
- command mode
- editing mode
[編輯] Networking
TCP/IP
- ping
- traceroute
- netstat
- telnet
- ftp
[編輯] Applications
Free Software/Open Source Software
