UNIX是一個多人多功的作業系統,因為是「多人」,所以使用者必須要有一個「帳號」才能被� 像進入 UNIX 環境中工作,而這個進入自己帳號的動作就是所謂的「簽入」。在以往習慣上,一般使用者常常採用 NCSA 通訊軟體由 PC 簽入工作站,即在 DOS 提示符號下鍵入如下指令: 英文模式下
telnet [工作站]
中文模式下(需先進入中文系統)ncutel [工作站]
nctutel [工作站]
nsysutel [工作站]
另外,您也可以利用視窗環境下,包括 WIDOWS 3.1及 WINDOWS 95、或是麥金塔 PC,的各種通訊軟體,如 SPTNET、NETTERM... 等等連上 UNIX 主機,如:
而無論你採用何種方式,在連接上之後,您都將依序被詢問:
1. Login: (請輸入帳號名稱 )
2. Password: (請輸入密碼 )
若帳號名稱與密碼無誤,就可以順利地進入個人的帳號中。要注意的是:在 UNIX 環境中,包括帳號與密碼的輸入,每個字母的大小寫並不互通,因此若輸入帳號或密碼時 大小寫搞錯,便無法順利進入帳號中。
至於「簽退」則是指離開自己帳號的動作, 可使用的指令有 exit、logout,或按功能鍵 CTRL-d。
附註:
計算機中心現有 Y11、Y12、...Y16 等七部工作站提供給同學使用,只要是辦妥註冊手續的同學就可以在這些工作站上擁有一個帳號,帳號名稱為:大學部:字母 u 加個人學號,如 u830101。 碩士班:字母 g 加個人學號,如g831012。 博士班:字母 d 加個人學號,如 d832005。密碼則是個人的身分證編號 ( 開頭的英文字母須大寫 ); 至於教職員則需提出申請,在建好帳號後另行通知。
unix 乃是一多人多功的作業系統,也就是說,在同一個時間內, 通常會有許多人在同樣一部機器上、進行著許多不同的工作。 因此, UNIX不可能讓所有的使用者都進入根目錄,隨心所欲的做各人想做的事,而造 成使用者間檔案狀態的衝突。針對這個問題, UNIX 的解決方式是:將磁碟空間做一完整的規劃,給每一個使用者都能有一個完全屬於他自己的磁碟空間,不致於有破壞別人檔案或檔案被別人破壞的情況發生,而這個屬於個人的磁碟空間(一 個目錄),就是個人使用者的 Home Directory。
個人的 Home Directory 的位置通常是因系統管理者的規劃而有所不同,如建在 /usr2/u/cc、/usr2/u/ee 底下等等( '/' 即相當於 DOS 中的 '\',代表根目錄或路徑中目錄間的區隔符號),UNIX 是以變數 HOME 來儲存帳號的 Home Directory 的所在位置,您可在 UNIX �6境中以下列指令得知帳號 Home Directory 的位置:
echo $HOME另外,無論我們將目錄更換到那個位置,只要使用 'cd' 指令、不加任何參數,即可回到自己的 Home Directory 目錄中。
1. man [CMD]可查閱命令[CMD]的用途、語法、參數及相關訊息,如
man ls 或 man rm即可查看 ls 或 rm 指令之用法,另 man intro' 可查看在 UNIX 中所有的可使用指令。2. passwd
可更改自己的密碼,以減少被入侵的機會。此指令執行後,需先輸入舊密碼,在核對無誤後才開始輸入新密碼,如:
Old password: (輸入原來的舊密碼) New password: (輸入想要的新密碼) Retype new password: (再輸入一次新密碼以做確認)3. touch [FILE]產生一個檔案大小為0的空檔案。
4. mkdir [DIR]
產生一新的空目錄,[dir]為目錄名稱。
5. rmdir [DIR]
刪除一空目錄(若要刪除的不是空目錄,則用rm -r [DIR]指令加以刪除)。
6. cd [DIR]
可更換現行目錄,若不指定目錄名稱(只下'cd'),則是將現行目錄更換到自己的HOME DIRECTORY。
7. pwd
顯示目前所在的目錄位置。
8. ls [-al] [DIR]
顯示現行目錄或指定目錄的檔案資料,若加上'-a'參數可將隱藏檔(檔名以'.'開頭的檔案)的資料一併顯示;若加上'-l'參數則可顯示較詳細的檔案資料,如檔案擁有者、檔案大小、產生日期... 等。
9. rm [FILE]
刪除一個或多個檔案,若加上'-r'參數則可刪除一目錄及此目錄下的所有檔案。
10. mv [FILES1] [ [FILES2] or [DIR]] ]
將[FILES1]改名為[FILES2],或將它的位置移到[DIR]目錄下。
11. cp [FILES1] [ [[FILES2] OR [DIR]] ]
將[FILES1]拷貝一份、命名為[FILES2]或放到[DIR]目錄下,且[[FILES2] or [dir]]是不能省略的,若要將某一檔案拷貝到現行目錄中,請下 cp [FILE] .
12. echo [STRING]
在畫面上顯示一字串或一變數內容,如
echo $HOME 顯示HOME變數之內容 echo $SHELL 顯示SHELL變數之內容13. cat [FILE]顯示檔案的內容、且不分頁。
14. more [FILE] 或 pg [FILE]
分頁顯示檔案內容,超過一頁的檔案可用
跳到下一頁、'b'跳回上一頁、'q'停止檔案的顯示。 15. clear
清除畫面上所有訊息。
16. grep [STRING] [FILE]
在檔案中尋找某一字串、並將含有此字串的那行資料顯示在畫面上,如:
grep jlin /etc/passwd也可用'|'附加於某一指令之後,作用在於過濾將出現的訊息,如ls -al|grep log即只顯示檔案資料中含有'log'這個字串的那幾行資料。17. whereis [COMMAND]
當您不清楚某一命令的所在路徑時,可用這個指令幫忙尋找,此指令功能與which指令類似。
18. find
根據檔名(-name)或其他特性尋找檔案的所在,並不侷於命令檔的尋找,如
find / -name passwd -print即自根(/)開始、往下尋找檔名為passwd的檔案、並將之列印到螢幕上(-print)。19. ps
顯示各process的編號(PID)、執行狀態等,如命令是IDLE、TERMINATED、SLEEP或RUNNABLE。
20. kill [-9] [PID]
將屬於自已的某一個PROCESS刪除,不再執行。
21. df
顯示所簽入機器上有那些檔案系統(類似DOS的磁碟)、及各檔案系統空間的使用情況。
22. quota -v
可看出某位使用者磁碟空間、檔案個數的配額及配額使用上的情況,如:
Disk quotas for jlin (uid 108): Filesystem usage quota limit timeleft files quota limit timeleft /a/thccy14/usr4/oz 6410 25000 30000 104 950 1000若 usage 超過 quota,表示所使用的磁碟空間已超過配額,此時須趕快清除不必要的檔案,否則系統將在期限到期(從超過配額起七天後)隨機刪除您的檔案,且使用的磁碟空間若 超過配額,在使用電子郵件收信時也會有不能收信的情況發生,須特別注意。23. nslookup [IP or DOMAIN NAME]
以主機的IP、DOMAIN NAME或別名(ALIAS)三者之一查詢這部主機的這三種資料。
24. ping [IP]
可傳送一些訊息到網路上某一定點,以是否收到一些回應來測視所在位置和這一定點間網路是否通暢。
25. who or w
列出所有在線上的使用者,及其簽入時間、地點、及正在進行中的指令。
26. finger [ID]@[MACHINE]
觀察在某部機器上的某個使用者的情況,如最後一次簽入的時間、看信的時間...。
27. chsh
改變簽入時所用的shell(為unix的命令編譯器),常見的shell如sh、csh、tcsh、bash...等,當執行此命令時將被詢問: New shell: 此時,請輸入shell的完整路徑,如/bin/csh(可參考/etc/shells檔案的內容)。
UNIX檔案系統中,檔案及目錄名稱並不像DOS系統有不能超過8個字元的限制,也沒有副檔名,使用者可視自己的需要決定檔名的形式與長度。 此外,UNIX檔案系統的最大特色在於:它系統下的每一個檔案或目錄都有它們自己的mode:當您以'ls -l'指令查看檔案狀況時,應該會看到如下的類似訊息:drwxrwx--- 2 jlin 512 Dec 31 08:39 Mail -rw-r--r-- 1 jlin 191 Feb 2 14:43 memm -rwxrwxrwx 1 jlin 13 Feb 16 12:26 test訊息中的第一個字元顯示檔案的種類,它可能是:d 表示是一個目錄 - 表示是一般的檔案 l 做了跨檔案系統連結(SYMBOLIC LINK)的檔案或目錄接下來的九個字母則依序分為三組,分別代表檔案擁有者(USER)、與檔案擁有者屬於同一個group的使用者(Group)、其他使用者(Others)等三組使用者對這個檔案的存取權限,而每一組 的三個字元依次代表該組使用者對這個檔案讀(read,代表數字是4)、寫(write、代表數字是2)、執行(execute、代表數字是1)的權利,若位置上出現'-',則表示它所代表的權限是 被禁止的。如上述的test
- 是一般檔案,且User、Group、Others對它皆有讀(r)}寫(w)及執行(x)的權限。
memm
- 是普通檔案,User對它有讀寫的權利,但無法執行它;Group與Others則只有讀取的權限,不能修改或執行它。
- 是一個目錄。對一個目錄而言,'r'表示可對這個目錄作'ls'的動作;'w'表示可在此目錄下增刪檔案;'x' 表示可cd到這個目錄底下。所以對於Mail而言,除 了這個目錄的擁有者與和他屬同一group的使用者外,其他人是無法得知它的內容,也無法增刪它底下的檔案。
由於UNIX檔案系統的這種特性,我們可藉著對檔案或目錄'mode'的控制,而達到控制檔案保密性的目的。檔案擁有者可使用如下指令來改變檔案及目錄的'mode':
chmod nnn [FILE]其中nnn三個數字依次代表user、group與Others的權利狀態,n最大為7、最小為0,是各權限代表數字的和。n 權利狀態 ─ ──── 0 --- ( 0+0+0 ) 1 --x ( 0+0+1 ) 2 -w- ( 0+2+0 ) 3 -wx ( 0+2+1 ) 4 r-- ( 4+0+0 ) 5 r-x ( 4+0+1 ) 6 rw- ( 4+2+0 ) 7 rwx ( 4+2+1 )如執行chmod 444 test則test的mode變成-r--r--r-- 1 jlin 13 Feb 16 12:26 test對所有的使用者來說,test都是一個read only的檔案,如此我們就可依檔案的重要性及安全性的考慮,開放自己的檔案,以期達到資源共享,或關閉自己的檔案,以達到機密性與安全性的要求。
因使用上的需要,我們必須讓某一個檔案同時存放在許多不同的路徑下,但若使用'cp'指令,把這個檔案拷貝到各路徑下,則同一份資料就佔據了多份的磁碟空 間,不旦造成磁碟空間的浪費,且當檔案內容需做更動時,我們也必需一一加以修正,既麻煩又可能會有遺漏,實非良策。在UNIX系統中,我們可用'ln'指令做檔案的連結以解決上述的困擾,指令的下法為:
ln [FILE1] [FILE2]即把[FILE1]這個檔案資料在磁碟中存放的起始位置存放到[FILE2]中,換句話說,[FILE2]的內容只是一個指標,它指向[FILE1]的資料儲存區,當使用者呼叫[FILE2]時,系統就到它所記載的位置上讀取 [FILE1]的資料來使用,若資料經過修改後存檔,也是存到它所記載的指標位置。這個作法可以使各路徑下所有連結起來的檔案,能做同步的修改,避免操作上的麻煩或遺漏,同時也可以避免同一資料重複使用磁碟空間、造成浪費,為UNIX檔案系統的一大特色。
PS. 若欲連結的兩個檔案分屬兩個不同的檔案系統,則連結時須加上'-s'參數,做所謂Symbolic Link,如:
ln -s [FILE1] [FILE2]
vi是UNIX系統內附的全螢幕編輯器,只要您的機器使用UNIX作業系統,您就幾乎一定有vi可以使用,vi在使用時分為三個模式:
1. 文字輸入模式(Text Input Mode) 2. 命令模式(Command Mode) 3. 列命令模式(Last Line Mode)當我們以'vi [FILE]'指令進入vi編輯器時,就是在命令模式狀態下,此時可使用游標鍵在資料區內移動游標,但無法輸入資料,必須以下列任一命令鍵進入文字編輯模式,才能輸入資料:a Append Data A Append Data on the End of th Line i Insert Data o Insert a New Line Below O Insert a New Line Above進入文字編輯模式後,即可開始編輯,在編輯過程中,可用[return]鍵換行,用[backspace]刪除游標前的字元,游標鍵則失去功能,您將發現使用游標鍵只會看到一些亂碼,此時按 [esc]就會再回到命令模式,游標鍵的功能也再度恢復。
在命令模式中除了上述a、i、o、O等指令外,尚有:
dd 刪除一行 dw 刪除一個字組(word) x 刪除一個字元,'4x'即相當於下'xxxx' r 將游標所在位置的字元更改成稍後輸入的字元 R 將一字組更換為稍後輸入的字組 u 取消前一個指令,恢復未下指令前之狀況 U 取消之前下過的所有指令 /[STRING] 在資料中尋找[STRING]這個字串, 若有重覆尋找的必要,可按'n,(next)繼續尋找下一個符合的字串。 CTRL-f 游標往前跳24行 CTRL-b 游標往回跳24行如果現在我們位於命令模式中,我們就可使用以下的列命令(一律以':'為開頭)::r [FILE] 將[FILE]的內容插入游標所在處。 :w 將資料存起來,但不離開編輯畫面。 :wq 將資料存檔並離開編輯畫面。 :q! 離開編輯畫面,且更改的資料不存檔。 :q 離開編輯畫面,資料未做任何更動。附表. DOS 與 UNIX 常用指令對照表DOS UNIX Description ================= ================ =================== \ / 根目錄 . . 現在所在目錄 .. .. 上一層目錄 attrib +r [FILE] chmod 444 [FILE] 設定檔案的屬性 cd pwd 顯示現行路徑 cd [DIR] cd [DIR] 更換現行目錄位置 chkdsk df, du, quota 顯示磁碟空間使用狀況 cls clear, tput clear 清除畫面上的訊息 command sh 啟動命令編譯器 comp [FILE1] [FILE2] cmp [FILE1] [FILE2] 比較兩檔案間之不同 copy [FILE1] [FILE2] cp [FILE1] [FILE2] 檔案之拷貝 date, time date 顯示系統時間 del [FILE] rm [FILES] 刪除檔案 deltree [DIR] rm -r [DIR] 刪除一個目錄 dir ls -al 顯示目錄下的檔案資料 echo [STRING] echo "[STRING]" 顯示一字串 exit exit 離開一命令編譯器 find "[STRING]" [FILE] grep [STRING] [FILES] 尋找一字串 md [DIR] mkdir [DIRS] 產生一目錄 more < [FILE] more [FILES] 分頁顯示檔案內容 move [FILE] [DIR] mv [FILE] [DIR] 改變檔案位置或檔名 print [FILES] lp [FILES] 列印檔案 lpr [FILES] rd [DIR] rmdir [DIRS] 刪除一空目錄 ren [FILE1] [FILE2] mv [FILE1] [FILE2] 改變檔案名稱 set set 列出環境變數 sort < [FILE] sort [FILES] 將檔案排序 type [FILE] cat [FILES] 不分頁顯示檔案內容 ver uname -a 顯示作業系統版本備註:本中心所提供的工作站因未安裝印表機,所以上述的印表指令在本中心的工作站上是無法使用的。