source命令的作用
當我修改了/etc/profile檔案,我想讓它立刻生效,而不用重新登入;這時就想到用命令,如:source /etc/profile
對source進行了,並且用它與sh 執行指令碼進行了對比,現在總結一下。
source命令:
source命令也稱為“”,也就是一個點符號(.),是bash的內部命令。
功能:使讀入指定的Shell程式檔案並依次執行檔案中的所有語句
source命令通常用於重新執行剛修改的初始化檔案,使之立即生效,而不必登出並重新登入。
用法:
source filename 或 . filename
source命令(從 C Shell 而來)是bash shell的內建命令;點命令(.),就是個點符號(從Bourne Shell而來)是source的另一名稱。
source filename 與 sh filename 及./filename執行指令碼的區別在那裡呢?
1.當shell指令碼具有可執行許可權時,用sh filename與./filename執行指令碼是沒有區別得。./filename是因為當前目錄沒有在PATH中,所有"."是用來表示當前目錄的。
2.sh filename 重新建立一個子shell,在子shell中執行指令碼里面的語句,該子shell繼承父shell的環境變數,但子shell新建的、改變的變數不會被帶回父shell,除非使用export。
3.source filename:這個命令其實只是簡單地讀取指令碼里面的語句依次在當前shell裡面執行,沒有建立新的子shell。那麼指令碼里面所有新建、改變變數的語句都會儲存在當前shell裡面。
舉例說明:
1.新建一個.sh指令碼,內容為:A=1
2.然後使其可執行chmod +x test.sh
3.執行sh test.sh後,echo $A,顯示為空,因為A=1並未傳回給當前shell
4.執行./test.sh後,也是一樣的效果
5.執行source test.sh 或者 . test.sh,然後echo $A,則會顯示1,說明A=1的變數在當前shell中
對source進行了,並且用它與sh 執行指令碼進行了對比,現在總結一下。
source命令:
source命令也稱為“”,也就是一個點符號(.),是bash的內部命令。
功能:使讀入指定的Shell程式檔案並依次執行檔案中的所有語句
source命令通常用於重新執行剛修改的初始化檔案,使之立即生效,而不必登出並重新登入。
用法:
source filename 或 . filename
source命令(從 C Shell 而來)是bash shell的內建命令;點命令(.),就是個點符號(從Bourne Shell而來)是source的另一名稱。
source filename 與 sh filename 及./filename執行指令碼的區別在那裡呢?
1.當shell指令碼具有可執行許可權時,用sh filename與./filename執行指令碼是沒有區別得。./filename是因為當前目錄沒有在PATH中,所有"."是用來表示當前目錄的。
2.sh filename 重新建立一個子shell,在子shell中執行指令碼里面的語句,該子shell繼承父shell的環境變數,但子shell新建的、改變的變數不會被帶回父shell,除非使用export。
3.source filename:這個命令其實只是簡單地讀取指令碼里面的語句依次在當前shell裡面執行,沒有建立新的子shell。那麼指令碼里面所有新建、改變變數的語句都會儲存在當前shell裡面。
舉例說明:
1.新建一個.sh指令碼,內容為:A=1
2.然後使其可執行chmod +x test.sh
3.執行sh test.sh後,echo $A,顯示為空,因為A=1並未傳回給當前shell
4.執行./test.sh後,也是一樣的效果
5.執行source test.sh 或者 . test.sh,然後echo $A,則會顯示1,說明A=1的變數在當前shell中
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29952014/viewspace-2120346/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL中的source命令MySql
- source和.命令的區別
- linux source命令Linux
- linux source 命令Linux
- sh/bash/source/.命令的區別
- source命令的一個妙用(轉)
- source 和export 命令的區別Export
- shell中的點命令與source命令的區別
- linux下source命令Linux
- Linux中source命令的使用方式Linux
- 【朱永光】Microsoft Source Analysis for C#的推波助瀾作用ROSC#
- linux sed []命令的作用Linux
- linux 命令尾部&的作用Linux
- Source insight 的一些命令總結
- shell指令碼中不識別source命令指令碼
- Linux Source命令及指令碼的執行方式解析Linux指令碼
- partprobe 小命令大作用
- mysql使用source 命令亂碼問題解決方法MySql
- ping命令的作用和原理簡述
- Linux中chmod命令的定義及作用!Linux
- dis ip int brief命令的作用是什麼?
- Debian與RH的service命令作用等同的命令為invoke-rc.d
- Linux系統中的list命令有何作用?Linux
- Linux 中grep命令中 -P選項的作用Linux
- Linux chattr命令有哪些作用?命令格式是什麼?Linux
- Linux Shell執行source或.命令報錯'bash: ..: command not found'Linux
- 學習Source Generators之瞭解Source Generators的應用場景
- oracle中java source的使用OracleJava
- Viva:Open Java的Source (轉)Java
- Linux grep命令有何作用?如何使用?Linux
- .net source code
- ES6let命令和塊級作用域和const命令
- Linux裡面sort命令的作用是什麼?如何使用?Linux
- echo命令在Unix中的作用以及其常見用法?
- Linux dump命令有什麼作用?如何使用?Linux
- Linux中cd命令有何作用?如何使用?Linux
- Linux apt命令有什麼作用?如何使用?LinuxAPT
- Linux type命令有什麼作用?如何使用?Linux