###1.sh ##(該sh 目的是 將變數env傳入env.sh, 同時讓env.sh在當前事物生效,最後執行env.sh 定義的變數envs)
export env=prepare
echo $env
. env.sh
echo $envs
###env.sh
#!/bin/bash
# config all schema env in this file
echo $env
case $env in
rollout)
# uat
export nls_lang=american_america.utf8
export envs=/dbuatdb/change/env/env_dbuat_uat.sql
export schema_home=/dbuatdb/change/schema/2016_10_11_2016.2
export schema_home_70600=$schema_home/rel-007-06-000/db/schema_changes/db/rollout
export schema_home_70605=$schema_home/rel-007-06-005/db/schema_changes/db/rollout
# prod
#export nls_lang=american_america.utf8
#export envs=/dbproddb/change/env/env_dbprod.sql
#export schema_home=/dbproddb/change/schema/2016_05_10_2016.2
#export schema_home_70400=$schema_home/rel-007-04-000/db/schema_changes/db/rollout
#export schema_home_70500=$schema_home/rel-007-05-000/db/schema_changes/db/rollout
echo r
;; prepare)
# uat
export nls_lang=american_america.utf8
export envs=/dbuatdb/change/env/env_dbuat_uat.sql
export schema_home=/dbuatdb/change/schema/2016_10_11_2016.2
export schema_home_70600=$schema_home/rel-007-06-000/db/schema_changes/db/prepare
export schema_home_70605=$schema_home/rel-007-06-005/db/schema_changes/db/prepare
# prod
#export nls_lang=american_america.utf8
#export envs=/dbproddb/change/env/env_dbprod.sql
#export schema_home=/dbproddb/change/schema/2016_05_10_2016.2
#export schema_home_70400=$schema_home/rel-007-04-000/db/schema_changes/db/prepare
#export schema_home_70500=$schema_home/rel-007-05-000/db/schema_changes/db/prepare
echo p
;;regress)
# uat
export nls_lang=american_america.utf8
export envs=/dbuatdb/change/env/env_dbuat_uat.sql
export schema_home=/dbuatdb/change/schema/2016_05_10_2016.2
export schema_home_70400=$schema_home/rel-007-04-000/db/schema_changes/db/regress
export schema_home_70500=$schema_home/rel-007-05-000/db/schema_changes/db/regress
# prod
#export nls_lang=american_america.utf8
#export envs=/dbproddb/change/env/env_dbprod.sql
#export schema_home=/dbproddb/change/schema/2016_05_10_2016.2
#export schema_home_70400=$schema_home/rel-007-04-000/db/schema_changes/db/regress
#export schema_home_70500=$schema_home/rel-007-05-000/db/schema_changes/db/regress
echo re
;;*) echo 'please use right option'
;;esac
faq1.
source命令:
source命令也稱為「點命令」,也就是乙個點符號(.)。source命令通常用於重新執行剛修改的初始化檔案,使之立即生效,而不必登出並重新登入。
用法:
source filename 或 . filename
source命令除了上述的用途之外,還有乙個另外乙個用途。在對編譯系統核心時常常需要輸入一長串的命令,如
2.3.
Bash變數相關
變數名 只能包含字母 數字和下劃線 bash中變數類別 本地變數 作用範圍僅限當前源程式檔案,僅對當前shell程序有效,對子shell無效 環境變數 作用範圍是當前shell及其子shell 特殊變數 表示上乙個命令的執行狀態返回值 表示引數的個數 表示引數列表 表示引數列表 位置變數 1,2,變...
awk怎樣自定義變數以及常用bash傳遞的變數
linux伺服器管理 bash指令碼編寫過程中經常用到awk進行資料分析,awk變數使用過程中又經常因為出現歧義或者定義不規範,導致無法得到預期的結果。本文用最簡潔的例子說明awk變數如何正確的定義和使用。1在awk中自定義變數 通過 v引數便可以自定義變數傳遞給awk使用,如果是begin中呼叫的...
python變數傳遞 python變數傳遞
python變數傳遞 數值 num 1 123 num 2 num 1 改變num 2值前 print num 1 num 2 format num 1,num 2 num 2 0 改變num 2值後 print num 1 num 2 format num 1,num 2 輸出num 1 123,...