-h 為 Hard Link,讀取方式為一層一層取得檔案相關的關聯資料,再到對應的 inode 取得檔案的屬性,以及檔案內容資料所在的 block , 最後到 block area 取得檔案的資料。
不管在哪個目錄底下叫出檔案並修改,因為 Hard Link 只是在目錄下建立一個檔案關聯紀錄,因此修改檔案時皆會修改到同一個檔案,而刪除檔案時只是刪除一個檔案關聯紀錄,並不是刪除檔案本身,因此不會變動到檔案本身的 inode 與 block area,好處為較安全。
由於 Hard Link 是在同一個 partition 上建立檔案關聯,因此 Hard Link 有兩項限制:
不能跨 File System
不能對目錄做 link
而參數 -s 為 Synbolic Link,這就好理解多了,Synbolic Link 會建立一個新檔案,指向 link 到的檔案或目錄,所以原檔案或目錄被砍掉時,這個 link 就會失效。而因為 link 的建立方式是建立新檔案,因此會有獨立的 inode 與 block 佔用磁碟空間 (建立及運作方式雷同 Windows 的捷徑)。
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ '
fi
這段是判斷有無開啟彩色 Terminal 顯示模式
第二行為預設的顯示設定,顯示的樣子大概像這樣
要顯示視窗則改成下列內容
if [ "$color_prompt" = yes ]; then
if [ "$WINDOW" = "" ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;35m\][W$WINDOW]\[\033[00m\]\$ '
fi
else
在彩色 Terminal 顯示模式裡面再加一個判斷 GNU Screen 是否啟用,沒有的話顯示預設樣式,有的話則顯示成有加入視窗編號的樣式