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