다른 명령
건수 처리
db2 -m "insert into test values(1)" | grep "Number of rows affected" |awk '{print $6}' | read V_COUNT echo $V_COUNT
KSH 전체
- fork 적용
- awk print
- read var : $var로 변수입력 됨
- 언더바 처리 안됨? $DR = '+'로 처리
- 파라메터 받기 ${#}
#!/bin/ksh if [ ${#} -ne 3 ] then echo "use parameter :ex) ./SH_SUBUL_JOB.ksh JOBNAME SRC_TABLE day_list_2018.txt" exit 255 fi echo "dw subl db $1 $2 $3 converting..." HOME=/home/mig_adm DR='_' JBNAME=$1 TBNAME=$2 DAY_TXT=$3 funcall () { echo Z#$TBNAME cat $HOME/CYKIM/$DAY_TXT | while read var ; do db2 -v connect to mgsdw user mig_*** using ****1234; db2 "CALL MIG_ADM.MP0_JOB_SWITCH_ON('$JBNAME','Z#$TBNAME$DR$var');"; db2 -mvf $HOME/CYKIM/Z#$TBNAME$DR$var.SQL |grep "Number o f rows affected" |awk '{print $6}' | read V_COUNT;db2 "INSERT INTO MIG_ADM.MIG_SUBL_LOG (JOBNAME,TABLE_NAME,TGT_TABLE_NAME,PART_DT,INS_ROWS) VALUES ('$JBNAME','$TBNAME','Z#$TBNAME$DR$var','$var','$V_COUNT')"; db2 "CALL MIG_ADM. MP0_JOB_SWITCH_OFF('$JBNAME','Z#$TBNAME$DR$var');"; done echo "job completed..." } fork () { funcall & } fork child_pid="$!" wait "$child_pid"