UNIX操作介紹

首頁 ] 上一層 ]

 

首頁
 多媒體廣場
偶像台
妙韻送知音
古典音樂放送
兒歌金曲放送
電子賀咭
玩Games堂
遊戲下載
遊戲網站連結
電腦遊戲密技
美味食譜
孕育篇
嬰兒篇(0至3歲)
幼兒篇(4至6歲)
兒童篇(7至12歲)
青少年篇
家長篇
家庭篇
心靈雞湯
社會工作理論
社會工作實務
社會工作研究
社會工作資源
心理學
精神醫學
實用資源總覽
電腦教學
硬體教室
軟件應用教學
網路研習室
自學網頁製作
 打工仔廣場
工作簡介
求職指南
職位徵求
勞工法例
法律服務
繽紛樂園
青少年活動推介
笑看人生
新聞討論區
福音餐會
網上交談室
議員會客室
本站告示板
泥上鴻爪留言冊
尋找引擎總覽

Most of the following command also work on Unix.

其實以下的指令大部份都可在 Unix 上運作。


Account Management 帳號管理

系統指令:

增加使用者:adduser
更改權限:chgrp    chmod    chown
變換使用者帳號成為另外一個使用者:su
Command
指令
Description, Syntax & Example
解說、語法及例子
adduser

Create user account
新增使用者帳號,此指令還會自動建立使用者的HOME目錄

【常用範例】adduser newuser

  • 輸入此指令後,會出現一堆訊息要你輸入使用者名稱和其它的訊息
useradd

Create user account
新增使用者帳號

【常用範例】useradd newuser

userdel

Delete user account
刪除使用者帳號

【常用範例】userdel existuser

groupadd

Create user group
新增群組

【常用範例】groupadd newgroup

groupdel

Delete user group
刪除群組

【常用範例】group existgroup

chmod

Change the permissions mode of file or directory
設定檔案或目錄的存取權限

  1. chmod  a=rw  note:
  2. 設定note,將這個檔案設定為所有使用者都可以讀、寫,但不能執行

【常用範例】

  • chmod 755 dirname

  • chmod ug+rx dirname

chgrp

改變檔案的群擁有者名稱

【常用範例】

  • chgrp  project  report:將 report 檔案的群擁有者改變為 project
chown

改變檔案的擁有者

【常用範例】

  • chown  manager  table:將檔案 table 的擁有者名稱改成 manager 這個人
su  <user> Enable a user to temporarily become another user. Default user is root.
臨時登入成另一使用者,預設值是 root
  1. 登入為另一用戶,改變目前的使用者身份。

  2. 若想要從遠端以 root 身份登入系統時,常常會先以其它身份從遠端登入系統,再用此指令將身份轉換成 root。

  3. 此做法可以確保系統安全

【常用範例】

  1. su  Jack:將使用者身份轉換成 Jack。轉換前會先要求你輸入 Jack 的密碼。
  2. su:轉換成 root。

Return 返回


Background Jobs 背景作業

和行程有關者:bg    fg    kill    nohup    ps

Command
指令
Description, Syntax & Example
解說、語法及例子
% job number
& execute the command background
CTRL-z interrupt a job and stop it (suspended)
jobs list the jobs being run in background
bg place the job from suspend to background

觀看有那些程式在背景執行

【常用範例】bg

fg [%n] bring the specified job number from background to foreground

將背景執行的程式叫到前景執行

【常用範例】fg

kill [%n] kill the specified job number

停止程式的執行

【語法】

  1. kill  [-signal] pid...
  2. kill  -signal -pgid..
  3. kill  -l

【選項】

  • -l  (list):顯示 signal 的符號名稱

【常用範例】

  1. kill  111:刪除111號行程
  2. kill  -9  111:強制刪除111號行程
nohup

此程式可以讓使用者 logout 出去後,仍能繼續執行所指定的程式

【常用範例】

  • nohup  exefile &:執行 exe file 程式,且使用者 logout 以後,仍能繼續執行
ps

list all currently running process include background job

顯示系統正在執行中的行程資訊

【語法】

  • ps  [options]

【選項】

  1. -l  (list):顯示較多的資訊
  2. -t  termlist  (terminal):列出所指定termlist終端機所產生的處理程序
  3. -u  uidlist  (user ID):只列出在uidlist中所指定使用者識別碼或使用者名稱所產生的程序
  4. -g  grplist  (group ID):只列出在grplist中所指定群識別碼所產生的處理程序

【常用範例】

  1. ps:顯示使用者本身正有那些程式正在執行
  2. ps  -l:列出詳細內容

Return 返回


Basic Operation 基本操作

基本指令:

常用指令
和文字檔有關者:cat    diff    grep    more
尋找檔案或程式:find    where
清除螢幕:clear
顯示目前所在路徑:pwd
跳離UNIX:exit    logout
 
不常用指令
和使用者有關:chfn    chsh    passwd    who    whoami
使用者之間傳送訊息:mesg    wall    write
顯示或設定時間、日期:date
檔案的連結:ln
列印檔案:lp
Command
指令
Description, Syntax & Example
解說、語法及例子
dir same as "ls" without options
find

找尋檔案

【語法】

  • find  path-name-list  expression

【選項】

  1. -name  pattern:設定所要尋的檔案名稱,若有萬用字元則須將檔名加上引號
  2. -exec  cmd:當找到檔案時,則執行cmd所指定的指令
  3. -ok  cmd:同exec,但是找到檔案時會問你要不要執行指令
  4. -print:當找到檔案時,列顯示檔案的路徑名稱和檔名
  5. -local:要找尋的檔案是在本地電腦上
  6. -type  c:要找尋的檔案符合c所指定的型式,c 有以下幾種:
        b:區塊特殊檔
        c:字元特殊檔
        d:目錄
        l:符號連接檔
        p:pipe檔(fifo)
        f:一般檔案
  7. -nouser:設定所有找尋的檔案不是在/etc/passwd檔案中所列使用者所擁有的
  8. -nogroup:設定要找尋的檔案不是在/etc/group檔案中所列的群所擁有

【常用範例】

  1. find  .  -name  "file*"  -print:找出目前目錄及子目錄下以file為開頭的檔案
  2. find  .  -name  "file*"  -exec  rm  {}  \;    :同上,但找到後刪除它
where

這個指令會去系統內定的目錄找尋執行檔所在位置

【常用範例】

  • where  ls:找尋ls放在那個目錄
man

Display online help
顯示線上說明文件

man 指令用法:
man 指令是用來查詢系統中各種指令的用法、各種設定檔的說明及寫程式所需要的資訊。
UNIX的指令相當的多,甚至每個指令可能都會有十幾種可用的參數。
所以當我們忘記指令的用法時我們都會利用 man 來查詢。
有時我們安裝新的軟體的時候,這些軟體甚至都會自已將說明檔安裝在 man 的目錄。
各位可以試看看這個指令:man  joe。如果你有安裝 joe 軟體的話,你可以發現用 man 竟然可以查詢到 joe 的說明檔。
底下我們將介紹一下如何使用 man 這個程式,以及 man 的輸出所代表的意義。請看這裡

【常用範例】man command

pwd

Report current directory
顯示目前所在的目錄

【常用範例】pwd

clear Clear terminal screen 清除螢幕

【常用範例】clear

  chfn

改變使用者的資料,包括使用者預設的shell、使用者全名、電話號碼....等等,這些資料在其它 user 使用 finger 指令查詢你的時候會看到

【常用範例】

  1. chfn:當你執行這個指令以後,會出現q編輯器讓你編輯資料
chsh

在一般的 UNIX中 chsh 的功能在於改變你所使用的 shell,不過在 FreeBSD中 chsh 和 chfn 似乎是一模一樣的程式

【常用範例】

  • chsh:當你執行這個指令以後,它會要求你輸入你要使用的 shell
passwd Change password
更改密碼

【常用範例】passwd:更改密碼

who

顯示有那些使用者簽入系統

【常用範例】who

whoami Who am I
檢視自己的 Login Name,當使用者不斷使用 su 更換身份時,可用此指令提醒自已正在使用那個帳號

【常用範例】whoami

mesg

設定能否與其他使用者傳送訊息

【常用範例】

  1. mesg:查詢其他使用者能否傳送訊息過來
  2. mesg  n:讓其他使用者不能傳送訊息過來
  3. mesg  y:讓其他使用者能夠傳送訊息過來
wall
  
(write all)
送訊息給每位正在系統中的使用者

【常用範例】

  • wall  <  message:將 message 檔案中所記載的訊息傳送給所有在系統中的使用者
write

送訊息給其它在系統中的使用者

【常用範例】

  • write  steve  ttypa:和在 ttypa 終端機的 steve 交談
date

顯示或設定現在的時間、日期

【常用範例】

  • date:顯示現在的時間,日期
lp

列印資料到印表機

【常用範例】

  1. lp  jan  feb  mar:列印 jan、feb、mar 三個檔案
  2. lp  -n  30  today:將today列印30份

Return 返回


Compress & Decompress 壓縮及解壓

壓縮指令:
compress    gzip    pack    unpack    tar    uncompress

        若你拿到一個已壓縮的檔案時,如何判斷它是用何種壓縮程式壓縮的?其實只要看附檔名,大部分的壓縮檔都可以判斷出來。底下我們列出附檔名和相對的壓縮程式:

  1. .Z(Z大寫)      compress、uncompress
  2. .gz                        gzip
  3. .z(z小寫)       pack、unpack
  4. .tar                        tar
  5. .tar.gz                   tar+gzip
  6. .tgz                       tar+gzip
        當然結尾為.Z的檔案並不一定就是由compress壓縮過的檔案。因為UNIX中並沒有強烈限制附檔名的型態。

        最上面一行我們列出了六個壓縮程式,這些都是目前UNIX中最常使用的壓縮程式。不過若你常到各大FTP站去抓檔案的話,你可以發現幾乎所有的壓縮檔都是.tar.gz或是.tgz,也就是它們都是經過tar和gz壓縮過。其它型式的壓縮檔已經很難找到。其實你只要背tar這個壓縮檔的使用方式,就可以解開目前大部分的壓縮檔(因為tar也可以解經過gzip壓縮過的檔案)。

        其實tar並不是個壓縮檔。它的功用是它可以把數個檔案(甚至包目錄)合並成一個檔案。而UNIX的使用者又特別喜歡把這一個檔案再經過gzip壓縮一次。所以你看到的壓縮檔型式就會是:.tar.gz。因為它分別經過tar和gzip處理過。而.tgz的意思也是和.tar.gz一樣,它也是經過tar和gzip壓縮過。

        不過tar也具有壓縮或解開.gz壓縮檔的能力。只要在參數中加入z這個參數,tar就可以具有gzip的能力。請看下列這兩行指令:

  • tar  cvf  aaa.tar  aaa/
  • tar  xvf  aaa.tar
        上面這兩個指令只有執行tar的部分而已。第一行指令是將aaa目錄及目錄下所有的檔案合併成一個檔案:aaa.tar(但是沒有壓縮)。第二行指令則具有相反的功能,它可以將aaa錄目從aaa.tar中解回來。
  • tar  czvf  aaa.tgz  aaa/
  • tar  xzvf  aaa.tgz
        上面這兩個指令會先將目錄合併成一個tar格式的檔案。再對這個檔案以gzip的方式壓縮。我們可以看出,這兩個指令比上面兩個指令只多了一個z參數而已。由於目前UNIX中最熱門的壓縮方法是經過利用tar和gzip來完成,所以使用者一定要會壓縮這種格式的檔案:.tar.gz或.tgz。而上面的說明正是在教你如何單獨用tar來完成tar+gzip的工作,讓你不用費心再背gzip的指令。
Command
指令
Description, Syntax & Example
解說、語法及例子
tar

將檔案以保存檔方式從磁帶或磁碟片中取出或存放,tar 也可以壓縮或解壓縮 gzip 產生的檔案

【語法】

  1. tar  -c[vwfbL[#s]]  device  block  files..

  2. tar  -r[vwfbL[#s]]  device  block  files..

  3. tar  -t[vfL[#s]]  device  [files..]

  4. tar  -u[vwfbL[#s]]  device  block  files..

  5. tar  -x[lmovwfL[#s]]  device  [files..]

【參數】

-x  (extact) expand the .tar file
將指定的檔案名稱從保存當中取出 parameter,解開 tar 檔案
-c  (create) create the tar file
建立新的保存檔,打包成 tar 檔案
-r  (replace) 新增到保存檔的尾端,而不會重新建立保存檔
-t  (table) 列出保存檔所包含的檔案名稱
-u  (update) 更新檔案
-z compress to / decompress from tar file
壓縮 / 解壓
-v display the output onscreen
顯示運作過程資訊
-f specify subdirectory and filename
指定子目錄與檔案

【常用範例】

  1. tar  czvf  aaa.tgz  aaa/:
    Create a compress file, "aaa/" is the subdirectory to be compressed.
    * Useful to backup data such as user account etc...
    把aaa目錄壓成aaa.tgz檔
  2. tar  xzvf  aaa.tgz:
    Decompress the compressed tar file to specify subdirectory and filename, display the output onscreen.
    * The first step to install application.
    將aaa.tgz解壓縮
  3. tar  cvf  aaa.tar  aaa/:建立aaa/目錄的保存檔aaa.tar
  4. tar  xvf  aaa.tar:將保存檔aaa.tar解開
  5. tar ztf tarfile.tar.gz
    view the content of tarfile.tar.gz
    檢視壓縮檔案內容

compress

壓縮檔案,壓縮後的附檔名為.Z

【常用範例】

  • compress  -v  letter.txt:壓縮 letter.txt,並顯示壓縮比例和壓縮後的檔名
uncompress

解開以 compress 壓縮的檔案(以.Z為附檔名的檔案)

【常用範例】

  • uncompress  -v  letter.txt.Z:解開壓縮檔 letter.txt.Z 並觀看壓縮訊息
pack

壓縮檔案,壓縮檔以.z結尾

【常用範例】

  • pack  letter.txt
unpack

解壓縮以.z為結尾的壓縮檔

【常用範例】

  • unpack  letter.txt.z
zip

Compress Files
壓縮檔案

zip myfiles *.txt

gzip

壓縮或解壓縮 .gz 型式的檔案

  1. gzip  -1  prog.exe:快速壓縮 prog.exe 檔
  2. gzip  -9  prog.exe:最佳化壓縮 prog.exe 檔
  3. gzip  -9  -r  test/:將 test 目錄下的檔案個別壓縮起來
  4. gzip  -d
unzip

Decompress Files
解壓檔案

unzip myfiles

Return 返回


Files Management 檔案管理

檔案和目錄的處理:cd    cp    ls    mkdir    mv    rm    rmdir

Command
指令
Description, Syntax & Example
解說、語法及例子
cat
  1. Concatenates files
    連接檔案
    【常用範例】
    cat appendfile >> originalfile

  2. 顯示檔案內容
    【常用範例】cat  file:
    顯示file這個檔案的內容
less

Similar to more but allows backward movement
向上下翻頁顯示檔案(全螢幕)

less filename
ps | less

ln

Creates a symbolic link to a files
建立目標檔案連結,如替檔案做硬連結(hard link)或符號連結(symbolic link)

【語法】

  1. ln  [-f]  [-n]  [-s]  file1  [file2...]  target
  2. ln -s originalfile linkfile

【選項】

  • -s  (symbolic):建立符號連結

【常用範例】

  1. ln  report  answer:建立硬連結
  2. ln  -s  report  answer:建立符號連結
more

Display file contents in full screen and page by page
向下翻頁顯示檔案(全螢幕),以單頁方式顯示檔案內容,常和  ls 和 cat 合用

【常用範例】

  1. more  file1:以一頁一頁方式顯示檔案內容
  2. cat  file1 | more:功能相同於 more | file1
  3. ls | more:以一頁一頁方式顯示目錄資訊
  4. ps | more
cd

Stands for "change directory". Changes the current working directory. 
If no directory is specified, then the user is returned to their home directory
改變目前工作目錄的位置

【常用範例】

cd move to home directory 回到家目錄
cd ~ move to home directory
cd .. move one directory up 回到上層目錄
cd dirname change to a specific directory dirname
cd  /tmp 進入/tmp這個目錄
cp

Copy files 複製檔案

【語法】

  1. cp from-filename to-filename

  2. cp  [-i]  [-p]  [-r]  file1  [file2...]  target

【選項】

  1. -i:當目地的的檔案已經存在時,會要求使用者確認是否要覆蓋原有的檔案
  2. -r  (recursive):若filen是個目錄,則會將整個目錄樹及檔案複製過去

【常用範例】

  1. cp  file  /tmp:將file拷貝到/tmp目錄
  2. cp  *  /tmp:將目前目錄下的所有檔案拷貝到/tmp目錄
  3. cp  -r  /usr/eric  /tmp:將eric目錄拷貝到/tmp目錄下
ls

Display Information about files and directories
顯示檔案清單或目錄內容

【語法】

  • ls  [-RadLCxmlnogrtucpFbqisfl]  [names]

【選項】

  1. -r  (recursive):遞迴式顯示該目錄下的檔案及子目錄內容

  2. -a  (all):顯示所有的檔案,包括隱藏檔

  3. -d  (directory):當names是指某個目錄時,則會列顯示這個目錄的資訊,所不是顯示該目錄的內容

  4. -l  (long):詳細顯示檔案資訊

  5. -t  (time):依檔案修改時間的順序顯示

【常用範例】

ls display information in short format 顯示目前目錄的資訊
ls -l /tmp display information in long format 詳細顯示 /tmp 內的檔案資訊
ls  -ld  /tmp 詳細顯示 /tmp 這個目錄的資料
ls -a display information for every file including hidden file in a directory
顯示目前目錄的所有檔案,包括隱藏檔
mkdir

Create new directories
建立新目錄

【常用範例】

  • mkdir newdirectory
mv

Move files
改變檔案名稱或移動檔案到別的目錄

【語法】

mv  [-f]  [-i]  file1  [file2...]  target

【選項】

  1. -i:當檔案 target 已存在時,會要求使用者確認是否要取代
  2. -f:即使檔案 target 已存在,而且為禁止寫入的狀態時,也會將 file1 更名為 target

【常用範例】

  1. mv  test  test.old:將 test 檔案更名為 test.old
  2. mv  test  /tmp:將 test 檔案搬移到 /tmp目錄
rm

Delete files
刪除檔案或目錄

【語法】

  1. rm  [-f]  [-i]  file...

  2. rm  -r  [-f]  [-i]  dirname...  [file...]

【選項】

  1. -f:不會要使用者輸入確定要刪除的動作

  2. -r  (recursive):遞迴式刪除整個目錄樹

  3. -i  (interactively):以交談方式進行刪除

【常用範例】

rm   file1 刪除 file1 檔案
rm  * 刪除此目錄下的所有檔案
rm -r dirname delete directory and files recursively
rm  -r  -f  /tmp/aaa 將/tmp/aaa目錄整個刪除
rmdir

Delete empty directories
刪除空目錄

rmdir emptydirectory

【常用範例】

  • rmdir  /tmp/aaa:刪除 /tmp/aaa 空目錄

Return 返回


Filters 過濾器

 

Command
指令
Description, Syntax & Example
解說、語法及例子
grep

Looks for patterns found in files and reports when these patterns are found
在檔案內找尋特定的字串

  • ps aux | grep "sendmail"

【常用範例】

  1. grep  car  file1:找尋 file1 檔案中那裡出現car這個字
  2. grep  car  *:找尋整個目錄下有那些檔案有包含 car 這個字
sort

Sort and merge text files
排序

sort <unsort.txt >sorted.txt

tr

Translates or maps characters in a file from one form to another

  • tr -d \015\032 <dosfile >linuxfile

  • tr abc zyx

Return 返回


Login & Logout 登入及登出

Command
指令
Description, Syntax & Example
解說、語法及例子
login

login
登入

[ctrl]+d logout and return to login screen
登出及返回登入畫面
logout logout and return to login screen
登出Unix,功能相當於 exit

【常用範例】logout

exit logout and return to login screen
登出及返回登入畫面 ,功能相當於logout\

【常用範例】exit

rlogin Remote Login
遠端登入

Return 返回


Networking 網路工具

基本網路指令:

        底下介紹幾個比較重要的網路指令。前兩個指令是很常用的指令。若你想確定本地電腦和某台遠端電腦的連線是否正常時,可以用ping指令來測試;finger可以查詢本地或遠端使用者的資料;talk可以讓使用者在線上交談,類似BBS中聊天的功能;ifconfig用來設定網路介面;netstat用來查詢網路的使用情形;nslookup可以將IP轉成domain name,或將domain name轉成IP;route和traceroute都和router有關。

  1. ping
  2. finger
  3. talk
  4. ifconfig
  5. netstat
  6. nslookup
  7. route
  8. traceroute
和網路服務相關的指令:

        底下介紹目前常用的網路服務和相關指令:
 

  1. mail,elm:提供有關Email的服務
  2. telnet:終端機模擬器,同時也可以連線到提供BBS、Archie服務的機器
  3. ftp,ncftp:連線到提供FTP服務的機器
Command
指令
Description, Syntax & Example
解說、語法及例子
ping Requests packet echos from network hosts
測試網路連接狀況
此指令常用來判斷網路是否暢通、對方是否開機、或者用來判斷連線速度

【常用範例】

  1. ping  www.adaptec.com:判斷 www.adaptec.com 這台機器的連線狀態。如圖
  2. 當按ctrl - c 時,會立即終止偵測,同時會列出偵測結果(最下面兩行)。
  3. 由結果我們可以看出,我們送出了9個封包,對方只回應了4個。有55%的封包遺失。可見網路並不是很暢通。同時上面4行分別列出了所收到4個封包的資訊。
  4. 如第1個封包:從送出封包到收到對方回應的封包總共經過了372.298 ms。可見連線速度也很慢。
finger

Displays information about users on the system
顯示使用者資料,可查詢本地或外地使用者的資訊,這些資料可以利用chfn來設定

finger  
finger username  

【常用範例】

  1. finger  zulu:
    查詢同一台機器使用者 zulu 的資訊,執行後出現此畫面
    這些資訊包括幾個項目:
    Login--使用者的 ID;
    Name--使用者全名;
    Directory--使用者的 Home 目錄;
    Shell--使用者預設的 Shell;
    最後幾行顯示使者上次 login 的時間、有沒有新的信件到達、還有使用者自已編輯的計畫檔。
  2. finger  zulu@turtle.ee.ncku.edu.tw:功能同上。只是這個指令所查詢的是在turtle.ee.ncku.edu.tw這台機器上的使用者zulu。
talk

此指令可以和本地或遠端的使用者交談。當你和別的使用者有事情要討論時,這個指令是個很好用的工具。BBS的talk功能和此指令很像

【常用範例】

  1. talk  Mickey@turtle.ee.ncku.edu.tw:執行此指令後,在 turtle上的 Mickey 會出現這樣子的訊息
  2. 它的意是說使用者zulu@venus.ee.ncku.edu.tw要和你 talk,如果你要和他 talk 的話,請下這個指令:talk  zulu@venus.ee.ncku.edu.tw。
  3. 當然如果你不想和他 talk 的話,你可以乎略這個訊息。如果你下了這個指令,則你們雙方會建立連線,並出現這種畫面
  4. 這個畫面中間有一條橫線,線的中間寫著:zulu@venus。這個意思表示你目前正和venus上的 zulu 使用者交談。你所有打入的字都會出現在這條線的上半部,而venus上的zulu所打的字都會出現在這條線的下半部。
ifconfig Monitor and change the state of network interfaces
用來查閱與設定與管理網路介面,網路介面包括網路卡、PPP、SLIP、與lookback

【常用範例】

  1. ifconfig  -a:查詢所有網路介面的情形。在turtle上執行出現此畫面。由此畫面我們知道turtle上有三個網路介面:ed0、lp0、和lo0。其中ed0這個網路介面的IP=140.116.72.72;netmask=0xffffff00;broadcast位址=140.116.72.255;網路卡的MAC  address=00:80:c8:53:0b:aa。
  2. ifconfig  ed0  140.116.72.72  netmask  255.255.255.0:設定網路介面ed0的參數。此例設定IP為140.116.72.72,netmask為255.255.255.0。
  3. ifconfig  ed0  down:停止網路介面ed0。當你再執行ifconfig  -a就看對到ed0介面了。
  4. ifconfig  ed0  up:啟動網路介面ed0。
  5. ifconfig  ed0  140.116.72.74  netmask  0xffffffff  alias:這是IP  Alias,也就是你可以讓你的機器有兩個以上的IP。這裡設定第二個IP為140.116.72.74。
  6. ifconfig  ed0  140.116.72.74  delete:移除IP  alias。
iifdown

Disconnect ppp connection
解除 ppp 連線

ifdown ppp0

ifup

Connect ppp connection
接駁 ppp 連線

ifup ppp0

netstat displays the status of network connections on TCP, UDP, RAW or UNIX sockets to the system
觀察主機與其他電腦之間的連線狀況,封包傳輸等資料

【常用範例】

  1. netstat  -i:
    查詢網路介面流量。
    在turtle上執行出現此畫面
    其中比較重要的項目有:
    Ipkts表示接收到的封包;
    Ierrs表示接收到但是破損的封包;
    Opkts表示送出去的封包;
    Oerrs表示送出去但是破損的封包;
    Coll表示發生碰撞的次數。
    這些都是很重要的網管資料。
    如果 Ierrs、Oerrs 和 Coll 的值太大的話,表示網路可能出現某些問題。

  2. netstat  -t:
    查詢TCP網路連線情形。
    在venus上執行出現此畫面
    比較重要的是上面的 Active  Internet  connections。
    如果 (state) 項目標示為 ESTABLISHED 的話,表示這個這是一條已建立的連線,其中 Local Address 和 Foreign Address 分別表示本地電腦和遠端電腦的網路位址和連線的port。
    例如由第一行我們可以得知,從 turtle 端有某個使用者使用 telnet 連線到 local 電腦 venus。

  3. netstat  -a:
    使用 -a 選項比 -t 選項多了那些正在等待連線的 service daemon。
    若 (state) 項目標示為 LISTEN 的話,則表示有程式正在這個 port 等待連線。

  4. netstat  -rn:
    查詢routing  table。
    在venus上執行出現此畫面
    第一行開頭為 default 的那一行指定了預設的router:140.116.72.253。若沒有特別指定router,則會以140.116.72.253 當做 router;
    第二行 127.0.0.1為 localhost,它的 router 要設為  127.0.0.1;
    第三行 140.116.72/24 指定所有通往 140.116.72.* 的連線皆經由 link#1,也比是 default;
    第四行 140.116.72.14 指定若要通往 140.116.72.14,則經由 8:0:20:c:3f:e3,這是 router 的 MAC Address;
    最後一行 140.116.72.255 通往 ff:ff:ff:ff:ff:ff,表示這是 broadcast  address。
nslookup Queries the DNS to return information about specific hosts and networks
向 DNS 查詢主機與網路資訊
此指令可以將你輸入的 domain name 轉成IP位址,也可以將IP位址轉成domain name。
它是透過 domain name server 去轉換 domain name 或是 IP

【常用範例】

  1. nslookup:執行後會出現此畫面
    前兩行表示這個指令會去 domain name server:sun4.ee.ncku.edu.tw查詢資料,而這個 server的 IP 位址是 140.116.72.14。
  2. 第四行 '>' 表示要你輸入所要查詢的 domain name 或 IP,我們輸入 domain name:www.ncku.edu.tw, 結果它傳回此domain name所對映的IP:140.116.241.101;
  3. 而在第十二行我們輸入 IP:140.116.72.72,結果它傳回此IP對映的 domain name 為 turtle.ee.ncku.edu.tw。
route

用來設定 routing  table。routing  table 的內容可以用 netstat  -rn 來查詢

【常用範例】

  1. route  flush:清除routing  table。若你是透過網路進去的話,最好不要執行這樣的指令。否則網路會斷線,你就無法再操作這台電腦了。
  2. route  add  default  140.116.72.253:設定default的router,但是必須先清除原先的default  router才行。
  3. route  add  140.113.1.1  140.113.199.254:將通往140.113.1.1的封包經由140.113.199.254轉送。
  4. route  add  -net  140.113.199  140.113.199.254:將通往140.113.199.*的封包經由140.113.199.254來轉送。
  5. route  delete  140.113.1.1:如果有設定140.113.1.1的routing  path,則移除它。
telnet To access remote computers
操作遠端電腦
traceroute

讓你知道通往某機器經過那些 router,以及連線到底中斷或者那邊的連線比較緩慢

【常用範例】

  1. traceroute  140.116.6.12:查詢連線到 140.116.6.12 經過那些 router。如圖
  2. 總共經過4個router。
  3. 右邊則顯示了封包通過各個 router 所經過的時間。

Return 返回


Setup 設定工具

Command
指令
Description, Syntax & Example
解說、語法及例子
kbdconfig Keyboard Configuration
鍵盤設定程式
linuxconf Linux Configuration, text mode and X-Win mode.
Linux 設定程式
mouseconfig Mouse Configuration
滑鼠設定程式
netcfg Red Hat Linux network configuration tool, X-Win mode only.
紅帽子 Linux 網路設定工具
netconf Network Configuration, text mode and X-Win mode.
網路設定程式
ntsysv System Service
設定系統啟動時的執行程式
setup Setup Menu
設定功能表
sndconfig

Soundcard Configuration
音效咭設定程式

timeconfig Timezone Configuration
時區設定程式
Xconfigurator X Window Configuration.
X Win 設定程式
xf86config Traditional X Window Configuration
傳統的 X Win 設定程式
XF86Setup XFree GUI X Window Configuration
XFree 圖形介面 X Win 設定程式

Return 返回


System Management 系統管理

和磁碟或檔案系統有關:df    du    mount    quota    showmount    umount

Command
指令
Description, Syntax & Example
解說、語法及例子
df

Reports the amount of free disk space on any currently mounted file system
顯示目前硬碟所剩空間,查詢檔案系統剩餘的空間或 inodes 的使用情形

【常用範例】

  1. df  -k:
    查詢還有多少儲存空間可以使用。執行後會出現此畫面,此畫面左邊有File system Mounted on 這兩個欄位,分別表示這個檔案系統的名稱,還有這個檔案系統被 mount到那一個目錄。
    右邊有1K-blocksUsedAvail、和Capacity四個欄位。分別表示這個檔案系統的容量(以1024  butes為單位)、已使用的空間、剩餘的空間、和使用率。
  2. df  -i:
    和df  -k 這個指令功能類似,不過它會顯示 inodes 的使用情形。inodes 代表你可以建立的檔案及目錄總數。
diff

比較兩個檔案的不同處

【常用範例】

  1. diff  file1  file2:比較file1,file2兩個檔案的不同處
  2. diff  -c  file1  file2:詳細比較兩個檔案
du

Displays the amount of space being used by the specified directories or files
查看目前目錄所佔的硬碟空間

【常用範例】

  1. du  -k:以 1024 bytes為單位顯示目前目錄及以下各層子目錄所使用的空間大小。如圖
  2. 右邊欄位顯示目錄名稱。左邊顯示這個目錄所使用的空間大小(以1024  bytes)來計算。
mount

attach the device to the file system
掛上檔案系統

【語法】

  1. mount  -t  <FS_TYPE>  -o  <options>  <mount  device>  <mount  point>
  2. mount_<FS_TYPE>  -o  <options>  <mount  device  <mount  point>
  3. <FS_TYPE>一樣時,則上面兩個語法的功能完全一模一樣。

【常用範例】
mount /dev/hdc /mnt/cdrom mount the secondary master IDE CDROM to directory /mnt/cdrom
mount /dev/fd0 /mnt/floppy mount the floppy disk A to directory /mnt/floppy
mount /mnt/cdrom mount the CDROM to directory /mnt/cdrom
mount /mnt/floppy mount the floppy disk to directory /mnt/floppy
mount  -o  ro  /dev/sd1s1a  /home
  1. 掛入UFS檔案系統。
  2. 將/dev/sd1s1a掛到/home目錄下,且設為唯讀。
  3. /dev/sd1s1a的檔案系統必須是 UFS 格式。
  4. -o後面接著參數,其中 ro 即指定檔案系統為唯讀。
mount  -t  nfs  -o  intr,soft,bg
mount display the mounted device information

quota

若你的系統有支援 quota,則可利用這個指令來查詢系統給你多少的硬碟空間,還有自己已使用多少空間

【常用範例】

  1. quota  -v:
    查詢自己 quot a的使用情形。請看此例
    Filesystem 項目指出這是在 /home檔案系統的 quota 配置;
    blocks 項目指出你在這個檔案系統(/home)已使用 7176 個 blocks;
    quota 項目表示系統允許你在這個檔案系統使用 10000 個 blocks。
showmount

觀看一些 NFS 的資訊

【常用範例】

  1. showmount  -a  venus:
    觀看目前正有那些機器掛上 venus 所提供的 NFS 檔案系統。
    如圖的第一行:carpet:/home/ftp/private1,它指出carpet這台電腦目前正在使用 venus 所提供的 NFS目錄 /home/ftp/private1。

  2. showmount  -e  turtle:
    觀看turtle提供那些 NFS 目錄供其它電腦 mount。如圖
    它顯示 turtle 提供三個 NFS 目錄供別人 mount,而 Everyone的意思是指所有的電腦都可以使用 turtle 所提供的 NFS 目錄。
umount

detach the device from the filesystem
卸下檔案系統

umount /mnt/cdrom
umount /mnt/floppy

【常用範例】

  • umount  /mnt:
    不管 /mnt 掛上的是 ufs、DOS 或是 NFS 檔案系統,都可以利用這個指令來卸下檔案系統。

Return 返回


System Shutdown & Restart 系統關閉及重新啟動

關閉FreeBSD或顯示FreeBSD系統的一些訊息:shutdown    uname

Command
指令
Description, Syntax & Example
解說、語法及例子
reboot

Reboot the system now
立即重新啟動系統

init 6

Reboot the system now
立即重新啟動系統

[ctrl]+[alt]+[del] Reboot the system now
立即重新啟動系統
halt Halt the system now
立即關閉系統
shutdown

Shutdown the System
關閉系統

parameter 參數

-r Reboot the system when the shutdown is complete.
-h Halt the system when the shutdown is complete.

 

shutdown -r now
Reboot the system now
shutdown -h now
Halt the system from now
shutdown -r +15
Reboot the system after 15 minutes from now
shutdown -h +15
Halt the system after 15 minutes from now
shutdown -r 23:00
Reboot the system on 11 p.m.
shutdown -h 23:00
Halt the system on 11 p.m.

【常用範例】

  1. shutdown  -r  now  Now the system will shutdown.
    立即關閉UNIX系統,並通知其它使用者系統即將關閉。
    其它正在系統上的使用者會看到這樣的訊息:Now the system will shutdown.

  2. shutdown  -r  +10  After 10 minutes, the system will shutdown.
    十分鐘以後關閉UNIX系統,並通知其它使用者系統即將關閉。
    其它正在系統上的使用者會看到這樣的訊息:After 10 minutes, the system will shutdown.
uname

顯示Unix系統的相關資訊

【語法】

  1. uname  [-amnrsv]
  2. uname  [-S system_name]

【選項】

  1. -a  (all):顯示所有的資料
  2. -m  (machine):只顯示機器的硬體名稱
  3. -n  (node name):只顯示網路的節點名稱
  4. -r  (release):只顯示作業系統的release編號
  5. -s  (system):只顯示系統名稱
  6. -v  (version):只顯示作業系統的version編號

【常用範例】

  1. uname:顯示機器的節點名稱
  2. uanme  -a:顯示所有資訊



文書編輯器:vi    joe

        目前 UNIX 中最常用的編輯器為 vi、joe 和q。vi 是所有UNIX系統都會提供的編輯器,不過 UNIX 的新手幾乎都認為 vi 是個超級難用的編輯器。但是因為 vi 是最基本的編輯器,所以學習 vi 可以預防系統中剛好沒有提供 joe。另外 joe和 q 因為都和 pe2 有點類似,所以目前大多數的使用者最常用的編輯器不外乎這兩者。不過我發現在 FreeBSD 中 joe 和q似乎是同一個程式。所以我們在此只介紹 vi 和 joe。q 的部分請參閱 joe。