星期四, 5月 08, 2008

點(dot) (.)對目錄及shell scirpt的意義

###目錄中###
cd . 代表進入"目前這目錄"

###script file中###
. /etc/init.d/functions 代表在"同一個shell"中執行
這意思是, 原本
shell                                                                                           --> shell
           --> sub shell --> functions --> kill sub shell
變為
shell --> functions --> shell
差別在於所有執行後的變數及結果都會留在原本的shell中
在functions檔案中有一些函式, 像pidofproc() (系統原本只有pidof程式)
原本無法執行, 經過". /etc/init.d/functions"就變為區域變數, 就可以執行了
可以用"setgrep pidofproc", 看到所有functions留在shell中的資訊
當然在登出後或其他shell中是沒有的

沒有留言: