zoukankan      html  css  js  c++  java
  • bash 变量传递方法


    ###
    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
     

    FAQ

    1.http://blog.csdn.net/simon_dong618/article/details/1581132

    source命令:

    source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。

    用法: 

    source filename 或 . filename

    source命令除了上述的用途之外,还有一个另外一个用途。在对编译系统核心时常常需要输入一长串的命令,如
     

    2.http://blog.csdn.net/dreamcoding/article/details/8519708

    变量在shell脚本间的传递

    3.http://www.cnblogs.com/ghgyj/p/4023448.html

    Shell case esac语句

  • 相关阅读:
    一些 Ubuntu 使用的小技巧
    体验 Web 自动化测试工具 Selenium
    CentOS 7 上安装 Nginx
    Windows查看端口占用情况
    Windows远程登录提醒:由于没有远程桌面授权服务器可以提供许可证,远程会话连接已断开。请跟服务器管理员联系。
    Vue动态的改变css样式
    centos7 U盘安装卡在 starting dracut initqueue hook Reached target Basic System
    用tsc编译ts文件的时候报错,tsc : 无法加载文件,因为在此系统上禁止运行脚本;
    Linux修改SSH默认的端口号
    Centos编译安装新版本Git
  • 原文地址:https://www.cnblogs.com/feiyun8616/p/6409677.html
Copyright © 2011-2022 走看看