u+x
a.sh,
而後就可以直接用全路徑來執行腳本了,比如當前文件夾下用./a.sh,如果如果腳本所在目錄在path環境變量之中,
則直接用a.sh即可(這和運行我們自己編寫的程序是壹個道理)sh/bash
./a.sh
這種情況不需要腳本具有執行權限以上兩種執行方式都是在子shell中執行的,也就是說當前shell需要啟動另外壹個shell,用來執行a.sh內的命令source
./a.sh
.
./a.sh(註意前面的
.
)以上兩種執行方式是在當前shell下執行,並不需要建立子shellsource和
.
命令的作用:用來執行壹個腳本
前兩種方式和後兩種方式的另外區別:如果妳在壹個腳本裏export
$kkk=111
,如果妳用./a.sh執行該腳本,執行完畢後,妳運行
echo
$kkk
,發現沒有值,如果妳用source來執行
,然後再echo
,就會發現kkk=111。因為調用./a.sh來執行shell是在壹個子shell裏運行的,所以執行後,結構並沒有反應到父shell裏,但是
source不同它就是在本shell中執行的,所以可以看到結果。