linux指令碼檔案執行的方法之間的區別

2022-05-04 14:54:08 字數 625 閱讀 8067

sh/bash

sh a.sh

bash a.sh

都是開啟乙個subshell去讀取、執行a.sh,而a.sh不需要有"執行許可權",在subshell裡執行的指令碼裡設定變數,不會影響到父shell的

source

source a.sh

當前shell內去讀取、執行a.sh,而a.sh不需要有"執行許可權"

source命令可以簡寫為"."  即 

. a.sh

./

./a.sh

#bash: ./a.sh: 許可權不夠

chmod +x a.sh

./a.sh

開啟乙個subshell去讀取、執行a.sh,但a.sh需要有"執行許可權"

可以用chmod +x新增執行許可權

fork、source、exec

通常如果我們執行時,都是預設為fork的。

執行Mysql指令碼檔案的方法

方法一 在命令列下 未連線資料庫 輸入 mysql的bin目錄 mysql h loclhost u使用者名稱 p密碼 d資料庫 sql指令碼檔案路徑全名 f sql test.sql 回車.例如 c mysql bin mysql h localhost uroot p123456 dtestba...

Shell 執行指令碼檔案方法

bin bash printf s n hello world bin sh test.sh bin bash test.shchmod x test.sh 賦予指令碼檔案可執行許可權 test.sh 直接執行指令碼檔案以上執行方式都是在當前shell下開啟乙個子shell程序執行指令碼的,這樣在指...

linux執行sh指令碼檔案命令

很多時候需要多個命令來完成一項工作,而這個工作又常常是重複的,這個時候我們自然會想到將這些命令寫成sh指令碼,下次執行下這個指令碼一切就都搞定了,下面就是發布 的乙個指令碼示例。編寫指令碼 切換目錄 cd home ubuntu mobile 更新 git pull origin master 重啟...