UNIX 檔案系統教材:絕對路徑與相對路徑

UNIX 沒有磁碟槽的概念,所有 (邏輯) 磁碟機都整合在一個單一的樹狀檔案夾結構裡。 這整棵檔案樹的根,是以斜線符號 / 代表。 凡是以 / 開頭寫成的資料夾名稱,稱為絕對名稱,或絕對路徑。例如

/etc/mail
表示 etc 是根目錄中的一個資料夾,而 mail 是 etc 裡面的一個檔案。 mail 可能是普通檔案,也可能是 etc 裡面的一個次資料夾,從以上名稱中看不出來。 如果 mail 是一個資料夾,而且我們想要強調這個事實,就可以寫
/etc/mail/

每一個資料夾裡面,都有兩個內定的資料夾符號,平常用 ls 看檔案目錄的時候, 是看不到的。一個符號是一點 . 代表本身這個資料夾, 所以說

ls -l ./a.ps
的意思是強調,我要看目前這個資料夾裡面的 a.ps 檔案之詳細資料。 其結果和 ls -l a.ps 是一樣的。但以後我們會知道,某些情況下, 會需要利用到 . 符號。

另一個符號是兩點 ..,它代表上層資料夾 (parent directory)。 對於每一個資料夾,都有一個唯一的上層資料夾。 根目錄的上層資料夾就是它本身。

以目前的資料夾為出發點所寫出的資料夾名稱,稱為相對名稱,或相對路徑。 例如

../../math89/wenyuan/
就代表 math89 是一個資料夾,它在目前的資料夾上去兩層的那個資料夾內, 而 wenyuan 是 math89 裡面的一個次資料夾。

例如以下是一部分的樹狀檔案夾結構 (所有列出的檔案名都是資料夾)。
/etc mail
uucp
homefacultyshann
yih
math89wenyuan
specialnicolas
solomon
varcron
mail
spoolcron
mqueue
uucp

則 yih 的絕對路徑是 /home/faculty/yih/ , solomon 的絕對路徑是 /home/special/solomon/ , 從 yih 到 solomon 的相對路徑是 ../../special/solomon/ 。

在瞭解了絕對或相對路徑之後,可以應用在 ls 指令上。

ls PATH
其中 PATH 是一個絕對或相對路徑,以上指令就會列出 PATH 的簡短目錄資料。 同樣地情形,也可以應用在 ls -Fls -l 這些指令上。

習題

  1. 寫出從 /home/faculty/shann/ 到 /home/math89/wenyuan/ 的相對路徑。
  2. 寫出從 /var/spool/mqueue/ 到 /var/uucp/ 的相對路徑。
  3. 若目前的資料夾是 /home/faculty/shann/,下指令 ls ../yih 看到一個資料夾 News/,則此 News/ 的絕對路徑是什麼?
單維彰 (2000/10/15) --- [Prev] [Next] [Up]