You are on page 1of 6

#!

/usr/bin/ksh
#set -ex
# Author:
Doc Data Team
#
# Project:
Insourcing
#
# Script Name:
sd_archive_zip_xml_files.sh
#
# Purpose:
To archive files based on input parmeters
#
#
#
#
file(s).
#
# Software Used:
UNIX
#
#
#
#
#
#
#
####################################################################
#
Modification Log
#
####################################################################
#
Date
Init.
Description
#
####################################################################
# 10/10/2014 Version 1.0
#
####################################################################
LOG_DIR=/docdata/DefaultIT/DocMgmt/SwornDocs/Scripts/logs
zip_name=$6"_"archive_$(date +"%Y%m%d%H%M%S").tar
DTL_TMP_LIST_NM=$1
MSTR_TMP_LIST_NM=$2
DTL_XML_LST_NM=$3
MSTR_ZIP_LIST_NM=$4
ALL_FL_PATH=$5
ARCHIVE_NM_SYMBOL=$6
ARCHIVE_PATH=$7
MAIL_LIST='doc_data_prod_support@restricted.chase.com'
SCRIPT_FULL_NAME=`basename $0`
SCRIPT_NAME=`echo $SCRIPT_FULL_NAME | cut -f1 -d "."`
inbound_path=/docdata/DefaultIT/DocMgmt/SwornDocs/IntraLinks/InboundFiles
##CONTROL_FILE=$ALL_FL_PATH/*-CTL.xml
DTS_ARCH=0
#function do_bulk_archive {
#Checking the number of arguments passed.
user_path=`pwd`
if [[ `echo $user_path | grep -i -c '.*SwornDocs_IST.*'` -eq 0 ]];then
user_env='SwornDocs'
else
user_env='SwornDocs_IST'
fi
if [[ $1 = "ARCHDTS" ]];then
SCRIPT_NAME=`echo $5 | sed 's/_inbound_file_processing//g'`
#Added on 30Apr2015
LOG_FILE=${SCRIPT_NAME}_archiving_zip_xml_files_$(date +"%Y%m%d%H%M%S").
log
#Added on 30Apr2015
LOG_FILE=${LOG_DIR}/${LOG_FILE}
#Added on 30Apr2015
touch ${LOG_FILE}
#Added on 30Apr2015
chmod 775 ${LOG_FILE}
echo "Archiving for DTS TL-CC-CF!!" >> ${LOG_FILE}
if [[ $# -ne 5 ]];then
echo "Insufficient Arguments passed $# $1 $2 $3 $4 " >> ${LOG_FILE}
echo " <Usage> : ${SCRIPT_FULL_NAME} - <'ARCHDTS'> <DTS
> [TL|CC|CF] <NUM> " >> ${LOG_FILE}

mailx -s "${SCRIPT_FULL_NAME} - Insufficient Arguments p


assed - $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
exit 1
else
mod_dir="$2"
curr_zip_type="$3"
to_arch_fl="$4"
ARCHIVE_PATH="/docdata/DefaultIT/DocMgmt/${user_env}/${mod_dir}/
Archive/"
zip_name="${ARCHIVE_PATH}DTS_$3_archive_$(date +'%Y%m%d%H%M%S').
tar"
TMP_LIST_NM="DTS_$3_$4_archive_$(date +'%Y%m%d%H%M%S').list"
srch_path="/docdata/DefaultIT/DocMgmt/${user_env}/${mod_dir}/Src
Files/"
DTS_ARCH=1
fi
else
LOG_FILE=${ARCHIVE_NM_SYMBOL}_sd_archiving_zip_xml_files_$(date
+"%Y%m%d%H%M%S").log
#Added on 30Apr2015
LOG_FILE=${LOG_DIR}/${LOG_FILE}
#Added on 30Apr2015
touch ${LOG_FILE}
#Added on 30Apr2015
chmod 775 ${LOG_FILE}
if [ $# -lt 7 ]
then
echo "Insufficient Arguments passed $# $1 $2 $3 $4 $5 $
6 $7" >> ${LOG_FILE}
echo " Usage example : ${SCRIPT_FULL_NAME} - DTS_to_IL
_TLM_DTL_INFA_daily.lst DTS_to_IL_TLM_CMPRS_INFA_daily.lst $3 $4 $5 $6 'TL_DTS'
" >> ${LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - Insufficient Arguments p
assed - $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
exit 1
else
echo "sufficient Arguments passed" >> ${LOG_FILE}
chmod 775 $LOG_FILE
fi
fi
#fn_nm="In function do_bulk_archive"
if [[ ${DTS_ARCH} -eq 0 ]];then
if [[ -z "$5" ]]
then
if [[ -z "$7" ]]
then
echo " No dir or file(s) , exiting!!" >> ${LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - invalid directory passed - $(date +%Y%m%d) " $MA
IL_LIST < ${LOG_FILE}
exit 1
fi
fi
cd $5
total_archive_files_in_list=$6"_"archive_files_in_list_$(date +"%Y%m%d%H%M%S").t
xt
int_archive_files_in_list=$6"_"int_files_in_list_$(date +"%Y%m%d%H%M%S").txt
touch $7/$total_archive_files_in_list

chmod 777 $7/$total_archive_files_in_list


touch $7/$int_archive_files_in_list
chmod 777 $7/$int_archive_files_in_list
cat $1 > $7/$int_archive_files_in_list
echo "" >> $7/$int_archive_files_in_list
cat $2 >> $7/$int_archive_files_in_list
echo "" >> $7/$int_archive_files_in_list
cat $3 >> $7/$int_archive_files_in_list
echo "" >> $7/$int_archive_files_in_list
cat $4 >> $7/$int_archive_files_in_list
echo "" >> $7/$int_archive_files_in_list
sed '/^$/d' $7/$int_archive_files_in_list > $7/$total_archive_files_in_list
zp_list_count=`cat $7/$total_archive_files_in_list |wc -l`
if [ $zp_list_count -ge 1 ]
then
echo "\nlist file sucessfully created .........Please Check log- $(date) " >> $
{LOG_FILE}
#tar cvf $7/$zip_name `head -n1 $7/$total_archive_files_in_list`
awk -F '/' 'FNR =='1'{print $0;}' $7/$total_archive_files_in_list | while read l
ine;
do
echo " Archiveing file: $line" >> ${LOG_FILE}
tar cvf $7/$zip_name "$line"
chmod 775 $7/$zip_name
break;
done
awk '{print $0;}' $7/$total_archive_files_in_list | while read line
do
echo " Archiveing file: $line" >> ${LOG_FILE}
tar Duvf $7/$zip_name "$line"
done
#tar cvfL $7/$zip_name $7/$total_archive_files_in_list
rc=$?
tar_status=$rc
if [ $tar_status -ne 0 ]
then
echo "\nzipping files inside list files
failed .........Please Check log- $(date) " >> ${LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - zipping
files inside list files Failed - $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
exit $tar_status
else
total_archive_list_fl=$6"_"archive_list_files_$(date +"%Y%m%d%H%M%S").txt
touch $7/$total_archive_list_fl
chmod 777 $7/$total_archive_list_fl
echo "$5/$1" > $7/$total_archive_list_fl
echo "$5/$2" >> $7/$total_archive_list_fl
echo "$5/$3" >> $7/$total_archive_list_fl
echo "$5/$4" >> $7/$total_archive_list_fl
cd $ALL_FL_PATH
if [[ $6 = "IL" ]];then
#CONTROL_FILE=$ALL_FL_PATH/Template*-CTL.xml CreateSD*-CTL.xml
ls Template*-CTL.xml CreateSD*-CTL.xml >> $7/$total_archive_list_fl
else
#CONTROL_FILE=$ALL_FL_PATH/ExtractSD*-CTL.xml

ls ExtractSD*-CTL.xml >> $7/$total_archive_list_fl


fi
#if [ -f $CONTROL_FILE ]
#then
#ls $CONTROL_FILE >> $7/$total_archive_list_fl
#fi
tar rvfL $7/$zip_name $7/$total_archive_list_fl
final_tar_st=$rc
if [ $final_tar_st -ne 0 ]
then
echo "\nzipping list files failed ......
...Please Check log- $(date) " >> ${LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - zipping
list files failed - $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
exit $final_tar_st
else
awk '{print $0;}' $7/$total_archive_files_in_list | while read line
do
echo " removing file: $line " >> ${LOG_FILE}
rm -rf "$line"
done
awk '{print $0;}' $7/$total_archive_list_fl | while read line
do
echo " removing file: $line " >> ${LOG_FILE}
rm -rf "$line"
done
rc=$?
intermediate_file_status=$rc
if [ $intermediate_file_status -ne 0 ]
then
echo "\nintermediate files deletion failed in $5 path .........Please Check log
- $(date) " >> ${LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - intermediate files deletion failed in $5 path $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
exit $intermediate file_status
else
echo "\nintermediate files deletion suceeded in $5 path .......
..Please Check log- $(date) " >> ${LOG_FILE}
#mv $7/zip_name &7
#rc=$?
# archive_status=$rc
#if [ $archive_status -ne 0 ]
#
then
#echo "\nmoving tar file to archive dir $7 failed .........Please Check log- $
(date) " >> ${LOG_FILE}
#mailx -s "${SCRIPT_FULL_NAME} - moving tar file to archive dir $7 failed - $(da
te +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
#exit $archive_status
#else
#echo "\nmoving tar file to archive dir $7 succeeded .........Please Check log$(date) " >> ${LOG_FILE}
#fi
fi
fi
fi
else

echo "there are no files to archive in the mentioned list files" >> ${LOG_FILE}
fi
else
####################################################################
# ARCHDTS BLOCK
####################################################################
cd "${srch_path}"
echo " srch_path = ${srch_path} " >> ${LOG_FILE}
touch ${TMP_LIST_NM}
echo " TMP_LIST_NM = ${TMP_LIST_NM} " >> ${LOG_FILE}
chmod 775 ${TMP_LIST_NM}
for dl_fl in $(find . \( ! -name . -prune \) -type f \( -name "*${to_arch_fl}*
.lst" -o -name "from_unzip_${to_arch_fl}*.tmp" -o -name "to_zip_${to_arch_fl}*
.tmp" \) -print);do
echo $dl_fl >> ${TMP_LIST_NM}
echo " $dl_fl to ${TMP_LIST_NM}" >> ${LOG_FILE}
done
awk 'FNR =='1'{print $0;}' ${TMP_LIST_NM} | while read line;
do
tar cvf $zip_name "$line"
break;
done
awk '{print $0;}' ${TMP_LIST_NM} | while read line
do tar Duvf $zip_name "$line"
done
#tar cvfL $7/$zip_name $7/$total_archive_files_in_list
tar Duvf $zip_name "${TMP_LIST_NM}"
rc=$?
tar_status=$rc
if [[ ${tar_status} -ne 0 ]];then
####################################################################
# DTS ARCHIVE NOT built
####################################################################
echo "\ntar files for DTS failed in ...Please Check log- $(date) " >> ${
LOG_FILE}
mailx -s "${SCRIPT_FULL_NAME} - DTS files tar and deletion failed in $(date +%Y%m%d) " $MAIL_LIST < ${LOG_FILE}
##exit $intermediate file_status
else
####################################################################
# DTS ARCHIVE built, so purge
####################################################################
echo "DTS ARCHIVE built, begin purge" >> ${LOG_FILE}
awk '{print $0;}' ${TMP_LIST_NM} | while read line
do rm -rf "$line"
echo "removed $line " >> ${LOG_FILE}
done
if [[ -f ${TMP_LIST_NM} ]];then
rm ${TMP_LIST_NM}
echo "finally remove the , ${TMP_LIST_NM}" >> ${LOG_FILE}
fi
fi
fi

#zp_nm="test_rezip_$(date +'%Y%m%d%H%M%S')"
#$1='/docdata/DefaultIT/DocMgmt/SwornDocs/DTS/SrcFiles/'
#$2='*.xml *.doc *.pdf *.docx *.jpeg'
#$3="TL OR CE OR CR"
#zip_status=`do_bulk_archive $1 $2 $3`

You might also like