在當前Shell環(huán)境中從指定文件讀取和執(zhí)行命令。
source filename [arguments]
filename:要執(zhí)行的文件
arguments(可選):傳遞給文件的參數(shù)
source返回文件最后一個命令的返回值,如果文件不能讀取則會失敗
文件在$PATH
中找不到。
文件未給出。
在一些工具的執(zhí)行過程中,會把環(huán)境變量設置以"export XXX=XXXXXX"或"declare XXX=XXXXXX"的形式導出到 一個文件中,然后用source加載該文件內容到執(zhí)行環(huán)境中。
讀取和執(zhí)行/root/.bash_profile文件。
[root@localhost ~]# source ~/.bash_profile
Q:source
和sh
在執(zhí)行文件方面有什么區(qū)別?
A:sh
的執(zhí)行是在子shell中,source
會使得被執(zhí)行文件的變量及函數(shù)加載進當前終端環(huán)境內(除去函數(shù)內local修飾的變量等);建議您參考export
命令的 知識點 部分
help
命令。