文件字符串替换以及SQL执行工具

最近写的小工具,留着以后做参考

最近写的小工具,留着以后做参考
#########################################
文件字符串替换
#########################################
#!/bin/sh

echo -n "Createdate(例:20201022):"
read  CreateDate
CreateDate_Para=`echo ${
           
    CreateDate:0:4}\/${
           
    CreateDate:4:2}\/${
           
    CreateDate:6:2}`

echo "Createdate:"`echo ${
           
    CreateDate:0:4}/${
           
    CreateDate:4:2}/${
           
    CreateDate:6:2}`

# dev_cap:大文字、例:ABCD
parameter_XXXX=`echo $IoName_Para | tr a-z A-Z`
# dev_low:小文字、例:abcd
parameter_xxxx=`echo $IoName_Para | tr A-Z a-z`
# pro_pre_cap:IO初字母大文字、例:Abcd
parameter_Xxxx=`echo ${
           
    IoName_Para:0:1} | tr a-z A-Z`${IoName_Para:1}

for script in `find ./input -name * -type f -print` 
do
    # 出力ファイル名定義
	outfile=`echo ${
           
    script:7} | sed "s/xxxx/$IoName_Para/g"`
	# ファイル内容編集
	cat $script | 
	sed "s/XXXX/$parameter_XXXX/g"               | 
	sed "s/xxxx/$parameter_xxxx/g"               | 
	sed "s/Xxxx/$parameter_Xxxx/g"               | 
	sed "s/YYYY/$Device_Para/g"                  | 
	sed "s/Makers_Para/$Makers_Para/g"           | 
	sed "s/CreateDate_Para/$CreateDate_Para/g"   >./output/${outfile} 
done

#########################################
SQL执行工具
#########################################
#select COLUMN_1,COLUMN_2 from TABLE_1 where 
#(COLUMN_1 = オーダーID AND COLUMN_2 = コンテナID)
#OR (COLUMN_1 = オーダーID AND COLUMN_2 = コンテナID)
#OR (COLUMN_1 = オーダーID AND COLUMN_2 = コンテナID);
# 定義
DBA_USER=${SW_P_ORACLE_USER}
DBA_PWD=${SW_P_ORACLE_USER}
ORACLE_SID=${ORACLE_SID}

para_Array=""
para=""
count=0
strEquality="="

for para in `cat file` 
do
	count=$((${count} + 1))
	if [ `echo "${count} == 1" | bc` == 1 ];
	then
		continue;
	elif [ `echo "${count} == 2" | bc` == 1 ];
	then
		para_Array=`echo (COLUMN_1 $strEquality`${para%,*}`echo " "and COLUMN_2``echo $strEquality`${
          
   para#*,}\)
	else
		para_Array=${para_Array}" OR "`echo (COLUMN_1 $strEquality`${para%,*}`echo " "and COLUMN_2``echo $strEquality`${
          
   para#*,}\)
	fi
done

# SQLコマンド作成
sql_command="select COLUMN_1,COLUMN_2 from TABLE_1 where ${para_Array};"
echo 実行コマンド:${sql_command}
# 実行且つ出力
sqlplus ${DBA_USER}/${DBA_PWD}@${ORACLE_SID} << EOF
SET ECHO ON
${sql_command}
SET ECHO OFF
EOF
经验分享 程序员 微信小程序 职场和发展