Je dois travailler sur un shell existant qui a pour but de comparer le nombre de lignes contenues dans un fichier avec ce qui a été réellement chargé dans une base. Il est lancé à la fin de l'exécution d'une multitude de shells.
Mon objectif est de pouvoir le lancer à la fin de chaque shell. Or le (gros) problème est que je n'ai pas tout saisi au niveau de son contenu... Malheureusement il est truffé de awk et de sed et le guide du ksh ne parvient pas à me faire passer la pilule :-/
Sauriez-vous traduire son contenu ?
#!/bin/ksh
ctrlMsysout=$CONTROLM/sysout
ls $ctrlMsysout | sed '/^CMD./ d' | \
while read line;do
batch=`echo $line | sed 's/\.LOG.*//'`
inputfile=`grep bcp $currv/batchMngt/batches/$batch | nawk '{print $4}'`
let occur=0
while [ "$inputfile" != "" ];do
let occur=occur+1
origname=`echo $inputfile | nawk '{print $1}'`
file=`eval echo $origname`
if test -f $file;then
. ./certify.ksh $file $ctrlMsysout/$line $occur $batch
else
echo "the file $file doesn't exist"
fi
inputfile=`echo $inputfile | awk '{
for(i=2;i<=NF;i++)
{
print $i
}
}'`
done
done
Merci pour votre aide.
Trez
