詳解shell中source、sh、bash、./執行指令碼的區別
1、source命令用法:
source FileName
作用:在當前bash環境下讀取並執行FileName中的命令。該filename檔案可以無"執行許可權"
注:該命令通常用命令“.”來替代。
如:source .bash_profile
. .bash_profile兩者等效。
source(或點)命令通常用於重新執行剛修改的初始化文件。
source命令(從 C Shell 而來)是bash shell的內建命令。
點命令,就是個點符號,(從Bourne Shell而來)。
2、sh和bash命令用法:
sh FileName
bash FileName
作用:在當前bash環境下讀取並執行FileName中的命令。該filename檔案可以無"執行許可權"
注:兩者在執行檔案時的不同,是分別用自己的shell來跑檔案。
sh使用“-n”選項進行shell指令碼的語法檢查,使用“-x”選項實現shell指令碼逐條語句的跟蹤,
可以巧妙地利用shell的內建變數增強“-x”選項的輸出資訊等。
3、./的命令用法:
./FileName
作用:開啟一個子shell來讀取並執行FileName中命令。
注:執行一個shell指令碼時會啟動另一個命令直譯器.
每個shell指令碼有效地執行在父shell(parent shell)的一個子程式裡.
這個父shell是指在一個控制終端或在一個xterm視窗中給你命令指示符的程式.
shell指令碼也可以啟動他自已的子程式.
這些子shell(即子程式)使指令碼並行地,有效率地地同時執行指令碼內的多個子任務.
參考資料:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69949806/viewspace-2788612/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- shell中的source和直接執行sh的區別
- shell指令碼頭,#!/bin/sh與#!/bin/bash的區別.指令碼
- 執行shell指令碼報錯:-bash: ./test1.sh: /bin/bash^M: ...指令碼
- linux裡source、sh、bash、./有什麼區別(轉)Linux
- shell指令碼中不識別source命令指令碼
- [20210330]bash使用source or ..呼叫shell指令碼注意txt指令碼
- [20231023]生成bbed的執行指令碼(bash shell).txt指令碼
- shell指令碼的三種執行方式和區別指令碼
- sh指令碼執行報錯指令碼
- 在 Linux 中執行.sh 指令碼 No such file or directoryLinux指令碼
- 執行shell指令碼指令碼
- Linux定時執行.sh指令碼Linux指令碼
- [20210913]bash shell $* and $@ 的區別.txt
- Bash Shell指令碼中的陣列使用例項指令碼陣列
- 執行 shell 指令碼 \r 問題解決指令碼
- source shell.sh有什麼用
- Linux shell:執行shell指令碼的幾種方式Linux指令碼
- shell指令碼中/dev/null 2>&1詳解指令碼devNull
- Oracle RAC重新執行root.sh指令碼Oracle指令碼
- Linux中執行Shell指令碼的方式(三種方法)Linux指令碼
- Linux shell程式設計(一)shell指令碼中的變數詳解Linux程式設計指令碼變數
- shell和bash指令碼命令學習指令碼
- Mac 終端執行 shell 指令碼Mac指令碼
- bash shell多執行緒方案執行緒
- 生成 Linux 執行時間報告的 Bash 指令碼Linux指令碼
- bash shell指令碼接受多個引數指令碼
- shell指令碼linux命令連續執行指令碼Linux
- Linux shell指令碼中內聯輸入 <<- EOF和 <<EOF的區別Linux指令碼
- [20210618]記錄bash shell執行的命令.txt
- shell指令碼執行錯誤 $‘\r‘:command not found指令碼
- [20231102]除錯bash shell指令碼遇到的問題.txt除錯指令碼
- [20210107]編寫bash shell指令碼遇到的問題.txt指令碼
- Shell 指令碼中的exit狀態解釋指令碼
- 使用Mac自定義快捷鍵執行shell指令碼Mac指令碼
- php執行shell指令碼需要sudo許可權PHP指令碼
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- ./ 和sh 的區別
- Shell多執行緒備份資料庫的指令碼執行緒資料庫指令碼