34
UNIX UNIX 入入入入入 入入入入入 入入入入入入入入入入入入入入 入入入入入 入入入 [email protected]

UNIX 入門與介紹

  • Upload
    alanna

  • View
    55

  • Download
    3

Embed Size (px)

DESCRIPTION

UNIX 入門與介紹. 台灣大學計算機及資訊網路中心 教學研究組 張傑生 [email protected]. UNIX 系統沿革及版本. 1969 AT&T Bell Lab. 1976 Bell V6. 1977 Berkley(BSD). 1979 Bell V7. 1979 AT&T USG. 1979 Bell. 4.4BSD. V5. 時程表. UNIX 基本概念 UNIX 常用指令簡介. UNIX 基本概念. UNIX 的特性 DOS 使用者眼中的 UNIX. UNIX 的特性. 應用程式無大小限制 - PowerPoint PPT Presentation

Citation preview

Page 1: UNIX  入門與介紹

UNIX UNIX 入門與介紹入門與介紹

台灣大學計算機及資訊網路中心教學研究組 張傑生[email protected]

Page 2: UNIX  入門與介紹

UNIXUNIX 系統沿革及版本系統沿革及版本1969

AT&T Bell Lab

1976Bell V6

1977Berkley(BSD)

1979Bell V7

1979AT&T USG

1979Bell4.4BSD

V5

Page 3: UNIX  入門與介紹

時程表時程表 UNIX 基本概念 UNIX 常用指令簡介

Page 4: UNIX  入門與介紹

UNIXUNIX 基本概念基本概念

UNIX 的特性 DOS 使用者眼中的 UNI

X

Page 5: UNIX  入門與介紹

UNIXUNIX 的特性的特性

應用程式無大小限制具有虛擬記憶體多工系統本身已有網路能力擴充性強

應用程式無大小限制具有虛擬記憶體多工系統本身已有網路能力擴充性強

Page 6: UNIX  入門與介紹

DOSDOS 使用者眼中的使用者眼中的 UNIXUNIX (一)(一) 類似的操作介面

以輸入文字命令給電腦的方式來操縱電腦

電腦的回應以文字訊息顯示在螢幕上

類似的操作介面 以輸入文字命令給電腦的方式來操縱電腦

電腦的回應以文字訊息顯示在螢幕上

MS-DOSMS-DOS

Command: COPY FILE2 FILE2

Response: 1 file(s) copied

UNIXUNIX

Command: cp file1 file2

Response:

MS-DOSMS-DOS

Command: COPY FILE2 FILE2

Response: 1 file(s) copied

UNIXUNIX

Command: cp file1 file2

Response:

Page 7: UNIX  入門與介紹

DOSDOS 使用者眼中的使用者眼中的 UNIXUNIX (二(二))

類似的樹狀結構 以階層式的目錄及檔案來儲存資料

ID 、所有者和群的概念-用以分辨檔案的所有者 USERNAEM/UID -- 使用者名稱及 代號 OWNER -- 檔案的所有者 GROUP/GID -- 群組及群組代號 OTHER -- 除 OWNER 及 GROUP 外的其他人

類似的樹狀結構 以階層式的目錄及檔案來儲存資料

ID 、所有者和群的概念-用以分辨檔案的所有者 USERNAEM/UID -- 使用者名稱及 代號 OWNER -- 檔案的所有者 GROUP/GID -- 群組及群組代號 OTHER -- 除 OWNER 及 GROUP 外的其他人

Page 8: UNIX  入門與介紹

DOSDOS 的樹狀結構的樹狀結構root

dosutility

workwindowset3......

ndd

pe2......

pe2.exe

pe2.pro......

Page 9: UNIX  入門與介紹

UNIXUNIX 的樹狀結構的樹狀結構(一)(一)root

binetc

users

......

usr

ls

localbin......

catcp

tmp......

chenclaven......

Mailproject

Page 10: UNIX  入門與介紹

UNIXUNIX 的樹狀結構的樹狀結構((二二)) / (root) - UNIX 檔案系統的最頂層 /bin - UNIX 基本指令 /etc - UNIX 系統檔案及系統基本資料 /tmp -暫時檔案存放區 /usr -放 UNIX 各式命令、程式庫、說明 /usr/local/bin -各種工具 ~ (Home Directory) -使用者個人目錄

Page 11: UNIX  入門與介紹

UNIXUNIX 常用指令介紹常用指令介紹 進入與離開 UNIX 系統 UNIX 命令格式 線上查詢相關指令 檔案與目錄相關指令 列印檔案 轉向 Job 與 Process 的控制

進入與離開 UNIX 系統 UNIX 命令格式 線上查詢相關指令 檔案與目錄相關指令 列印檔案 轉向 Job 與 Process 的控制

Page 12: UNIX  入門與介紹

進入與離開進入與離開 UNIXUNIX 系統系統 連上欲進入的系統

進入 UNIX 系統( Login 步驟)

離開 UNIX 系統( Logout )步驟

連上欲進入的系統

進入 UNIX 系統( Login 步驟)

離開 UNIX 系統( Logout )步驟

telnet <hostname>( 或其他連線程式)

login: 輸入 usernamepassword: 輸入密碼(密碼不會顯示在螢幕上)

%logout (exit 或 CTRL/D)

telnet <hostname>( 或其他連線程式)

login: 輸入 usernamepassword: 輸入密碼(密碼不會顯示在螢幕上)

%logout (exit 或 CTRL/D)

Page 13: UNIX  入門與介紹

UNIXUNIX 命令格式命令格式 在 UNIX 中大小寫代表不同意義 command [option(s)] [filename(s)]

option: 使 command 更富有變化 [-<char(s)>] filename(s): 指令要處理的對象 若在一行上有多個指令,指令間需加 ;

在 UNIX 中大小寫代表不同意義 command [option(s)] [filename(s)]

option: 使 command 更富有變化 [-<char(s)>] filename(s): 指令要處理的對象 若在一行上有多個指令,指令間需加 ;

ls /etc/csh.cshrc --> 只列出檔名 ls -lF /etc/csh.cshrc --> 列出所有資訊

ls /etc/csh.cshrc --> 只列出檔名 ls -lF /etc/csh.cshrc --> 列出所有資訊

Page 14: UNIX  入門與介紹

線上查詢相關指令(一)線上查詢相關指令(一) man : 線上查詢各個指令的用法 man -k <Keyword> : 查詢所有與 <Keyword> 有關的指令

which <command(s)> : 由 ~/.cshrc 中設定的 path 找尋 <command(s)> 存放的目錄

man : 線上查詢各個指令的用法 man -k <Keyword> : 查詢所有與 <Keyword> 有關的指令

which <command(s)> : 由 ~/.cshrc 中設定的 path 找尋 <command(s)> 存放的目錄

man man man ls man -k editor which joe

man man man ls man -k editor which joe

Page 15: UNIX  入門與介紹

線上查詢相關指令(二)線上查詢相關指令(二) who : 查詢目前上機的使用者及 login 的時間 w : 查詢目前上機的使用者之工作狀態 date : 顯示目前之日期及時間

who : 查詢目前上機的使用者及 login 的時間 w : 查詢目前上機的使用者之工作狀態 date : 顯示目前之日期及時間

Page 16: UNIX  入門與介紹

who and wwho and w% who

u7916521 ttyp0 Aug 12 18:12 (lena)

% w

8:03pm up 1 day, 5:25, 8 users, load averages: 5,5,5

User tty login@ idle JCPU PCPU what

u7923015 ttyp0 6:13pm 2 67:20 44:00 -csh

CPU Time of All Process

CPU Time of Current Process

Name of Current Process

Page 17: UNIX  入門與介紹

檔案與目錄(一)檔案與目錄(一) 檔案:用以存放程式或資料,可分為執行程式檔、資料檔、文字檔、周邊設備及目錄檔等

目錄:用以有系統管理檔案,內含其他目錄及檔案

萬用字元: *( 任何字串 ) 、 ?( 任一字元 ) 路徑:指向某一檔案的走訪路程

絕對路徑:由根目錄往下找 相對路徑:由現在的工作目錄為起點 各階層目錄名以 / 分開

Page 18: UNIX  入門與介紹

檔案與目錄(二)檔案與目錄(二)

現在目錄為 /users/claven ls 之絕對路徑 : /usr/bin/ls ls 之相對路徑 : ../../usr/bin

現在目錄為 /users/claven ls 之絕對路徑 : /usr/bin/ls ls 之相對路徑 : ../../usr/bin

root

binetc

users

......

usr

ls

localbin......

catcp

tmp......

chenclaven......

Mail

. : 現在目錄 .. : 上一層目錄 ~ : Home Directory

. : 現在目錄 .. : 上一層目錄 ~ : Home Directory

Page 19: UNIX  入門與介紹

檔案與目錄之相關指令(一)檔案與目錄之相關指令(一) pwd : 查詢目前所在之目錄名稱 ls <dir(s)/file(s)> : 列出(目錄內)檔案資訊

ls : 只列出檔名 ls -a : 列出所有檔案,包含以 . 開頭的檔案 ls -l : 列出檔案資訊

mkdir <dir(s)> : 建立新目錄 cd <dir> : 改變工作目錄

cd ( 或 cd ~) : 回到 Home Directory

pwd : 查詢目前所在之目錄名稱 ls <dir(s)/file(s)> : 列出(目錄內)檔案資訊

ls : 只列出檔名 ls -a : 列出所有檔案,包含以 . 開頭的檔案 ls -l : 列出檔案資訊

mkdir <dir(s)> : 建立新目錄 cd <dir> : 改變工作目錄

cd ( 或 cd ~) : 回到 Home Directory

mkdir project cd project ---> pwd cd ---> pwd

mkdir project cd project ---> pwd cd ---> pwd

Page 20: UNIX  入門與介紹

ls -l ls -l 所顯示之資訊所顯示之資訊

t rwxrwxrwx links owner size date time filename

File TypeFile Typed : 目錄- : 普通檔c/b: 周邊l : 鏈結檔s : Socket

File TypeFile Typed : 目錄- : 普通檔c/b: 周邊l : 鏈結檔s : Socket

使用權限使用權限分 Owner 、Group 及 Othersr : 可讀w: 可寫x: 可執行-: 無

使用權限使用權限分 Owner 、Group 及 Othersr : 可讀w: 可寫x: 可執行-: 無

鏈結數鏈結數鏈結數鏈結數最近修改日期時間最近修改日期時間最近修改日期時間最近修改日期時間

d rwxrwxr-x 2 tstl 24 Oct 14 10:32 test- rw-rw-r-- 1 tstl 98 Oct 12 19:23 a

Page 21: UNIX  入門與介紹

實習實習 pwd ls -al cd /etc pwd ls -a cd pwd cd project

pwd ls -al cd /etc pwd ls -a cd pwd cd project

Page 22: UNIX  入門與介紹

檔案與目錄之相關指令(二)檔案與目錄之相關指令(二) cp < 原始檔 /目錄 > <目的檔 /目錄 > : 複製檔案或目錄 cp -r : 遞迴複製所有子目錄

cat <file(s)> : 顯示檔案內容 more <file(s)> : 一次以一個螢幕顯示檔案內容 rm <file(s)> : 刪除檔案

rm -r <dir(s)> : 刪除目錄及其下所有檔案、子目錄

cp < 原始檔 /目錄 > <目的檔 /目錄 > : 複製檔案或目錄 cp -r : 遞迴複製所有子目錄

cat <file(s)> : 顯示檔案內容 more <file(s)> : 一次以一個螢幕顯示檔案內容 rm <file(s)> : 刪除檔案

rm -r <dir(s)> : 刪除目錄及其下所有檔案、子目錄

cp ~/.cshrc . ----> ls -l cat .cshrc ----> more .cshrc rm .cshrc ----> ls -l

cp ~/.cshrc . ----> ls -l cat .cshrc ----> more .cshrc rm .cshrc ----> ls -l

Page 23: UNIX  入門與介紹

檔案與目錄之相關指令(三)檔案與目錄之相關指令(三) mv <file> <target>: 移動檔案

mv filea fileb : 將 filea 更名為 fileb mv filea dirb : 將 filea 搬到 dirb 目錄下 mv filea dirb/filec : 搬移並更名 mv dir1 dir2 : 若 dir2 存在,將 dir1搬到 dir2;否則將 dir1 更名為 dir2

rmdir <dir> : 刪除目錄(目錄內必須無檔案)

mv <file> <target>: 移動檔案 mv filea fileb : 將 filea 更名為 fileb mv filea dirb : 將 filea 搬到 dirb 目錄下 mv filea dirb/filec : 搬移並更名 mv dir1 dir2 : 若 dir2 存在,將 dir1搬到 dir2;否則將 dir1 更名為 dir2

rmdir <dir> : 刪除目錄(目錄內必須無檔案)

Page 24: UNIX  入門與介紹

實習實習 cd ~/project cp /etc/host* . mv hosts .. ls -al ~ mv ../hosts ./hostname cd .. mv project proj mkdir project mv proj project

cd ~/project cp /etc/host* . mv hosts .. ls -al ~ mv ../hosts ./hostname cd .. mv project proj mkdir project mv proj project

Page 25: UNIX  入門與介紹

改變檔案或目錄的使用權限改變檔案或目錄的使用權限 chmod <access> <file/dir>

<access> 為三個八進位的數字,分別代表 user, group, other 的使用權限

以 8 進位代表權限 (r = 4, w = 2, x = 1) chmod [who|op|access] <file/dir>

who : user = u, group = g, other = o, all = a op : add = +, remove = - , assign = = access : read=r, write = w; execute = x

chmod <access> <file/dir> <access> 為三個八進位的數字,分別代表 user,

group, other 的使用權限 以 8 進位代表權限 (r = 4, w = 2, x = 1)

chmod [who|op|access] <file/dir> who : user = u, group = g, other = o, all = a op : add = +, remove = - , assign = = access : read=r, write = w; execute = x

chmod 755 test chmod o-r test chmod u+rw test

chmod 755 test chmod o-r test chmod u+rw test

Page 26: UNIX  入門與介紹

目錄或檔案的使用權限目錄或檔案的使用權限Userrwx421

Grouprwx421

Otherrwx421

rwx421

r-x401

r--400

7 5 4

Page 27: UNIX  入門與介紹

實習實習 cd ~/project/proj ls -l hostname chmod 600 hostname chmod go+r hostname chmod u+x hostname

cd ~/project/proj ls -l hostname chmod 600 hostname chmod go+r hostname chmod u+x hostname

Page 28: UNIX  入門與介紹

轉向(一)轉向(一) ---- 輸出轉向輸出轉向 輸出轉向

command > file1 : 將 command 的輸出送往 file1 , file1 原先的內容消失

command >> file1 : 將 command 的輸出附加在 file1 的尾端

輸出轉向 command > file1 : 將 command 的輸出送往

file1 , file1 原先的內容消失 command >> file1 : 將 command 的輸出附加在 file1 的尾端

ls -l ls -l > list cat list

ls -l ls -l > list cat list

Page 29: UNIX  入門與介紹

轉向(二)轉向(二) ---- 輸入轉向輸入轉向及及 PIPPIPEE

輸入轉向 command < file1 : 將 file1 的內容作為 co

mmand 的輸入 PIPE command1 | command2 [|command]*

將 command1 的輸出作為 command2 的輸入

輸入轉向 command < file1 : 將 file1 的內容作為 co

mmand 的輸入 PIPE command1 | command2 [|command]*

將 command1 的輸出作為 command2 的輸入

cat > source sort < source ls -l | more

cat > source sort < source ls -l | more

Page 30: UNIX  入門與介紹

實習實習 cat > source

13524^D

cat source sort < source sort < source > dest cat dest

Page 31: UNIX  入門與介紹

前景與背景前景與背景 JobJob

前景 job :依前述命令迴圈執行之 job背景 job : 不等命令執行完畢即顯示提示符號

要執行很久又不會用到終端機輸出入的命令最適合 在背景執行

command &

前景 job :依前述命令迴圈執行之 job背景 job : 不等命令執行完畢即顯示提示符號

要執行很久又不會用到終端機輸出入的命令最適合 在背景執行

command &

顯示提示符號

讀取命令

處理命令

執行命令

命令解譯迴圈

shell

Page 32: UNIX  入門與介紹

暫停暫停//回復回復 JobJob 的執行的執行 在 job 執行時按下 Ctrl-Z 便會使該 job 的執行暫停

jobs : 觀看目前所有背景 job fg %jid : 將編號為 %jid 之 job 前景執行 bg %jid : 將編號為 %jid 之 job背景執行

在 job 執行時按下 Ctrl-Z 便會使該 job 的執行暫停

jobs : 觀看目前所有背景 job fg %jid : 將編號為 %jid 之 job 前景執行 bg %jid : 將編號為 %jid 之 job背景執行

ls -l /etc | more <--- 按 Ctrl-Z ls -l /bin | more <--- 按 Ctrl-Z jobs fg %1

ls -l /etc | more <--- 按 Ctrl-Z ls -l /bin | more <--- 按 Ctrl-Z jobs fg %1

Page 33: UNIX  入門與介紹

Process Process 的控制的控制 Process : 一個執行中的程式 ps : 列出 Process 狀態 BSD:

ps -a : 列出系統中所有 Process ps -u : 列出 Process 的執行者及其他資訊

SYSTEM  V: ps -e : 列出系統中所有 Process ps -f : 列出完整資料

kill -9 PID : 不再執行編號為 PID 的 Process

Page 34: UNIX  入門與介紹

實習實習 ls -l /etc | more CTRL-Z jobs ps -u kill -9 <PID of ls -l /etc | more> ps -u jobs

ls -l /etc | more CTRL-Z jobs ps -u kill -9 <PID of ls -l /etc | more> ps -u jobs