source命令與shell scripts的區別

2021-05-25 05:34:01 字數 483 閱讀 8870

執行如下命令./

set_env.sh

設定相關環境變數時發現:當此命令執行結束後,指令碼中所設定的環境變數仍為空,感覺此指令碼沒有執行;執行. set_env.sh指令碼執行成功。通過上網查詢,發現是由於source命令與shell scripts的作用範圍不同而導致的。

source命令與shell scripts的區別:

source在當前bash環境下執行命令,而scripts是啟動乙個子shell來執行命令。這樣如果把設定環境變數(或alias等等)的命令寫進scripts中,就只會影響子shell,無法改變當前的bash,所以通過檔案(命令列)設定環境變數時,要用source 命令。

source命令簡介:

source命令也稱為「點命令」,也就是乙個點符號(.)。source命令通常用於重新執行剛修改的初始化檔案,使之立即生效,而不必登出並重新登入。

用法: 

source filename 或 . filename

source命令與 命令

參考 source 命令是 bash shell 的內建命令,從 c shell 而來。source 命令的另一種寫法是點符號,用法和 source 相同,從bourne shell而來。source 命令可以強行讓乙個指令碼去立即影響當前的環境。source 命令會強制執行指令碼中的全部命令,而忽...

source命令與「 」點命令

source命令與 點命令 source 命令是 bash shell 的內建命令,從 c shell 而來。source 命令的另一種寫法是點符號,用法和 source 相同,從bourne shell而來。source 命令可以強行讓乙個指令碼去立即影響當前的環境。source 命令會強制執行指...

source 命令 命令

source 命令 從 c shell 而來 是 bash shell 的內建命令。點命令 就是乙個點符號.從 bourne shell 而來 是 source 的另一名稱。這兩個命令都以乙個指令碼檔名為引數,該指令碼將作為當前 shell 的環境執行,即不會啟動乙個新的子程序。所有在指令碼中設定的...