UNIX 常用的指令
以下只說明基本用法, 若需詳細說明, 請用 man 去讀詳細的 manual.

a. 關於檔案 / 目錄處理的指令:

1. ls

這是最基本的檔案指令。 ls 的意義為 "list",也就是將某一個目錄或是 某一個檔案的內容顯示出來。

2. cp

cp 這個指令的意義是複製 "COPY", 也就是將一個或多個檔案複製成另 一個檔案或者是將其複製到另一個目錄去。

3. mv

mv 的意義為 move , 主要是將一檔案改名或換至另一個目錄。

4. rm

rm 的意義是 remove ,也就是用來殺掉一個檔案的指令。在 UNIX 中一 個被殺掉的檔案除非是系統恰好有做備份,否則是無法像 DOS 裡面一樣還能夠救回來的。所以在做 rm 動作的時候使用者應該要特別小心。

5. mkdir

mkdir 是一個讓使用者建立一個目錄的指令。

6. chdir ( cd )

這是讓使用者用來轉移工作目錄用的。

7. rmdir

相對於 mkdir ,rmdir 是用來將一個"空的"目錄殺掉的。如果一個目錄下面沒有任何檔案,你就可以用 rmdir 指令將其除去。

8. pwd

pwd 會將目前目錄的路徑( path )顯示出來。

9. cat/more/less

以上三個指令均為察看檔案內容的指令。cat 的意義是貓....不不不,是 concatenate ,在字典上的意思是"連結,將…串成鎖狀"(語出資工電子詞典 cdict ),其實就是把檔案的內容顯示出來的意思。 cat 有許多奇怪的參數,較常為人所使用的是 -n 參數,也就是把顯示出來的內容加上行號。

more ,是"再多一點就好",more 可以將所觀察的檔案跟據終端機的形態一頁頁的顯示出來,再根據使用者的要求換頁或捲行。如果使用者要在某一個檔案中搜尋一個特定的字串,則按 / 然後跟著打所要搜尋的單字即可進行搜尋。more 也可以找得到。

less 的用法與 more 極類似,原先它就是為了彌補 more 只能往前方捲頁的缺點而設計。

10. chmod

chmod 為變更檔案模式用( change mode ) . 這個指令是用來更改檔案的存取模式( access mode )。在 UNIX 一個檔案上有可讀(r)可寫(w)可執行(x)三種模式,分別針對該檔案的擁有者( onwer )、同群者( group member )( 你可以 ls -lg來觀看某一檔案的所屬的 group ),以及其他人( other )。一個檔案如果改成可執行模式則系統就將其視為一個可執行檔,而一個目錄的可執行模式代表使用者有進入該目錄之權利。

b. 關於 Process 處理的指令:

1. ps

ps 是用來顯示目前你的 process 或系統 processes 的狀況。

我們可以經由 ps 取得目前 processes 的狀況,如 pid , running state 等。

2. kill

kill 指令的用途是送一個 signal 給某一個 process 。因為大部份送的都是 用來殺掉 process 的 SIGKILL 或 SIGHUP ,因此稱為 kill 。

SIGNAL 為一個 singal 的數字,從 0 到 31 ,其中 9 是 SIGKILL ,也就是一般用來殺掉一些無法正常 terminate 的訊號。其餘訊號的用途可參考 sigvec(2) 中對 signal 的說明。

你也可以用 kill -l 來察看可代替 signal 號碼的數目字。kill 的詳細情形

請參閱 man kill。

c. 關於字串處理的指令:

1. echo

echo 是用來顯示一字串在終端機上。

echo -n 則是當顯示完之後不會有跳行的動作。

2. grep/fgrep

grep 為一過濾器,它可自一個或多個檔案中過濾出具有某個字串的行,或是自標準輸入過濾出具有某個字串的行。

fgrep 可將欲過濾的一群字串放在某一個檔案中,然後使用 fgrep 將包含有 屬於這一群字串的行過濾出來。

d. 網路上查詢狀況的指令:

1. man

man 是手冊 ( manual ) 的意思。 UNIX 提供線上輔助( on-line help )的功能,man 就是用來讓使用者在使用時查詢指令、系統呼叫、標準程式庫函式、各種表 格等的使用所用的。令, 2 代 表系統呼叫( system call ) ,3 代表標準函數,等等。

2. who

who 指令是用來查詢目前有那些人在線上。

3. w

w 指令是用來查詢目前有那些人在線上,同時顯示出那些人目前的工作。

4. ku

ku 可以用來搜尋整個網路上的 user ,不像 w 跟 who 只是針對 local host 的 查詢. 而且 ku 提供讓使用者建立搜尋特定使用者名單的功能。你可以建立一個檔 案 information-file 以條列的方式存放你的朋友的資料,再建立一個檔案 hosts-file 來指定搜尋的機器名稱。 ku 的指令格式可由 ku -h 得到。

E. 網路指令:

UNIX 提供網路的連接,使得你可以在各個不同的機器上做一些特殊的事情如 你可以在系上的 iris 圖形工作站上做圖形的處理,在系上的 Sun 上News , 甚至到學校的計中去找別系的同學 talk 。這些工作可以利用 UNIX 的網路指 令,在你的位子上連到各個不同的機器上工作。如此一來,即使你在寢室,能 輕易的連至系上或計中來工作,不用像以前的人必須泡在冷冰冰的機房面。

這些網路的指令如下所述:

1. rlogin 與 rsh

rlogin 的意義是 remote login , 也就是經由網路到另外一部機器 login 。

rsh 是在遠方的機器上執行某些指令,而把結果傳回 local host 。rsh 的格式如下:

rsh host [ -l username ] [ command ]

如同 rlogin 的參數 -l username , rsh 的 -l username 也是指定 remote host 的 username 。而 command 則是要在 remote host 上執行的指令。如果沒有指定 command ,則 rsh 會去執行 rlogin ,如同直接執行 rlogin 。

2. telnet

telnet 是一個提供 user 經由網路連到 remote host。

3. ftp

ftp 的意義是 File Transfer Program ,是一個很常應用在網路檔案傳輸的 程式。

f. 關於通訊用的指令:

1. write

這個指令是提供使用者傳送訊息給另一個使用者,使用方式:

write username [tty]

2. talk/ytalk/cytalk/ctalk

UNIX 專用的交談程式。會將螢幕分隔開為你的區域和交談對象的區域, 同時也可和不同機器的使用者交談。使用方式:

talk username[@host] [tty]

3. mesg

選擇是否接受他人的 messege , 若為 messege no 則他人的 messege 將無法 傳送給你,同時他也無法干擾你的工作。使用方法:

mesg [-n|-y]

4. mail/elm

在網路上的 email 程式,可經由此程式將信件 mail 給他人。

g. 更改個人使用資料:

1. passwd

passwd 是用來更改你的使用密碼,用法為:

2. chsh

chsh 是提供使用者更換 login shell 的指令,你可經由此更換自己使用的 shell 。

小恐龍工作坊 提供