该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文《Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件》中通过Java代码实现调用该脚本并传入参数。
#!/usr/bin/env sh DBSCHEMA=$1 DBUSER=$2 DBPASSWORD=$3 TABLENAME=$4 FILEPATH=$5 DELIMITER=$6 EXPORTLIMIT=$7 SQLERR="NO ERROR MSG" ############################################################ # : wlog String ############################################################ wlog () { wlog_dt=`date "+%Y/%m/%d-%H:%M:%S" ` echo "\n${wlog_dt} $1" } ############################################################ # : db2connect db2connstring ############################################################ connDB2() { wlog "====================connect to $1=======================" wlog "db2 connect to $1 user $2 " ## conn=db2 connect to $1 user $2 using $3 > /dev/null if( db2 connect to $1 user $2 using $3 > /dev/null ) then wlog "Succeed connect to $1 " else wlog "Failed connect to $1 " exit -1 fi } ############################################################ # : db2connectRelease db2connstring ############################################################ releaseDB2() { db2 connect reset > /dev/null } ############################################################ # : db2export ############################################################ exportDB2() { connDB2 ${DBSCHEMA} ${DBUSER} ${DBPASSWORD} sql=" select * from ${TABLENAME} ${EXPORTLIMIT}" wlog "export to ${FILEPATH} of del modified by codepage=1208 COLDEL| ${sql}: " db2 "export to ${FILEPATH} of del modified by nochardel codepage=1208 COLDEL| ${sql}" } ############################################################ # : main ############################################################ run() { # connDB2 ${DBNODE} ${DBUSER} ${DBPASSWORD} ${DBNAME} # sql=" select inter_no,op_time from inter_log " # db2 -x ${sql}| while read inter_no op_time # do # echo "Result:${inter_no}->${op_time}" # done echo "Begin to export the data: " exportDB2 echo "Close the connection." releaseDB2 } echo "execute sql ................." run
其中以下导出命令将会去除导出文件中字符串的双引号:
db2 "export to ${FILEPATH} of del modified by nochardel codepage=1208 COLDEL| ${sql}"
COLDEL指定了分隔符为|
如果需要保留字符串双引号命令:
db2 "export to ${FILEPATH} of del modified by codepage=1208 COLDEL| ${sql}"
本文出自 “Forever_Love_ING” 博客,请务必保留此出处http://dwf07223.blog.51cto.com/8712758/1553382