最近写的小工具,留着以后做参考
最近写的小工具,留着以后做参考
#########################################
文件字符串替换
#########################################
#!/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