shell 编程小例子

1、公共环境设置文件

#!/bin/sh
#===============================================================================
# SCRIPT ID : EEOINIT
# SCRIPT NAME : 公共环境设置
# CREATE DATE :
# AUTHOR : @清风徐来@
# COPYRIGHT : @清风徐来@
# VARIABLES
# NONE
#===============================================================================
#exprot命令可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该次登陆操作
PROD="/xxx/xx/xx";export PROD

#PATH(共有的shell)
SH_PATH=${PROD}"/bin/";export SH_PATH #SH_PATH=${PROD}"/bin/sh/"
#PATH(JAVA-SOURCE)
JAVA_SRC_PATH=${PROD}"/bin/java/";export JAVA_SRC_PATH
#PATH(LOG-PATH)
LOG_PATH=${PROD}"/data/log";export LOG_PATH #LOG_PATH=${PROD}"/log/"
#PATH(IF-FILE)
IF_PATH=${PROD}"/data/if/in/";export IF_PATH
#PATH(SQL-FILE)
SQL_PATH=${PROD}"/etc/sql/";export SQL_PATH

#PATH(SQLLOADER)使用sqlloader向oracle数据库中插入数据
LOADER_PATH=${PROD}"/etc/";export LOADER_PATH #LOADER_PATH=${PROD}"/etc/sqlloader/"


#FILE-NAME(LOG)
LOG_FILE_EEO="EEO.log";export LOG_FILE_EEO
LOG_FILE_EEP="EEP.log";export LOG_FILE_EEP

LOG_FILE_EEQ="EEQ.log";export LOG_FILE_EEQ

LOG_FILE_EEM="EEM.log";export LOG_FILE_EEM
LOG_FILE_EEN="EEN.log";export LOG_FILE_EEN


#JOB开始时间
SYSDATE=`date '+%y%m%d%H%M%S'`
#JOB-ID
SESSIONID=${JOBID}${SYSDATE}
#DB连接变量
DBCONNECT="username/passwd@dbid";export DBCONNECT
#DB-用户名
DBUSER="username";export DBUSER
#DB-密码
DBPASS="passwd";export DBPASS

#JOB正常结束
JOB_EXIT_NORMAL=0;export JOB_EXIT_NORMAL
#JOB异常结束
JOB_EXIT_ERROR=1;export JOB_EXIT_ERROR

#-----Oracle関連-----
#设置oracle字符集
NLS_LANG=CHINESE_CHINA.AL32UTF8
export NLS_LANG
#oracle根目录
ORACLE_BASE=/opt/app/oracle
export ORACLE_BASE

ORACLE_HOME=${ORACLE_BASE}/product/11.2.0/dbhome_1
export ORACLE_HOME

LD_LIBRARY_PATH=${ORACLE_HOME}/product/11.2.0/dbhome_1/network/lib
export LD_LIBRARY_PATH

TNS_ADMIN=${ORACLE_HOME}/product/11.2.0/dbhome_1/network/admin/
export TNS_ADMIN

LANG=zh_CN.UTF-8
export LANG

#####################################################
#case用法
#####################################################

JOBCATEGORY=`echo ${JOBID} | cut -c1-3`

case ${JOBCATEGORY} in
EEM)
LOG_FILE=${LOG_FILE_EEM}
;;
EEN)
LOG_FILE=${LOG_FILE_EEN}
;;

EEO)
LOG_FILE=${LOG_FILE_EEO}
;;
EEP)
LOG_FILE=${LOG_FILE_EEP}
;;

*)
LOG_FILE=${LOG_FILE_EEQ}
;;
esac

2、公共函数shell

#!/bin/sh
#===============================================================================
# SCRIPT ID          : EEOCOMMON
# SCRIPT NAME        : 公共函数
# CREATE DATE        : 
# AUTHOR             : @清风徐来@
# COPYRIGHT          : @清风徐来@
# VARIABLES
#   NONE
#===============================================================================
#-------------------------------------------------------------------------------

#===============================================================================
# 函数名:doLogWrite
# 说明  :log输出
# 参数  :メッセージ
# 返回值:no
#===============================================================================
doLogWrite()
{
    DATE=`date +"%Y/%m/%d %H:%M:%S"`
    echo "${DATE},${JOBID},${SESSIONID},$1,${STEPID}" >> ${LOG_PATH}/${JOBID}.log
}

猜你喜欢

转载自www.cnblogs.com/xuhewei/p/9254933.html
今日推荐