shell腳本有兩種執行方式,一種是直接執行,一種是使用 或 命令執行 直接執行 直接執行shell腳本,bash會在當前bash下新建一個子bash進程用來執行shell腳本,此時腳本里定義的變數,並不會傳會到父bash進程中 source或.執行 使用 來執行一個shell腳本表示使用當前bas ...
shell腳本有兩種執行方式,一種是直接執行,一種是使用$source
或.
命令執行
直接執行
直接執行shell腳本,bash會在當前bash下新建一個子bash進程用來執行shell腳本,此時腳本里定義的變數,並不會傳會到父bash進程中
#!/bin/bash
VAR=12
echo $VAR
$exec.sh
12
$echo $VAR
#父bash中並不存在VAR
$
source或.執行
使用$source
來執行一個shell腳本表示使用當前bash進程來執行shell,所以shell里的變數自然都會在當前bash中使用
$source exec.sh #也可以寫成$. exec.sh
12
$echo $VAR
12 #父bash也可以使用VAR
$