1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
| while true
do
case $1 in
-v) VERSION=$2
shift 2
;;
-l) LIST=$2
shift 2
;;
-u) USER=$2
shift 2
;;
-h) usage
exit 0
;;
*)
break
;;
esac
done
#variable prédefini
DATE="`date '+%Y-%m-%d'`"
TMPDIR="/tmp/maj${USER}"
if [ ! -d "${TMPDIR}" ]
then
mkdir -p ${TMPDIR}
fi
HOMEMAJ="${USER}"
REPLIST="liste"
LISTEFICH="liste_maj_${DATE}.lst"
LOGFILE="${TMPDIR}/majlog_${DATE}.log"
MESMAJ="MaJ${USER}"
if [ "${USER}" == "toto" ]
then
REPMAJ="majtoto"
elif [ "${USER}" == "tata" ]
then
REPMAJ="majtata"
elif [ "${USER}" == "titi" ]
then
REPMAJ="majtiti"
fi
if [ ! -d "${HOMEMAJ}/${REPMAJ}/${VERSION}" ]
then
echo "le repertoire ${VERSION} n'existe pas" | mail -s "error ( rdft.sh ) de mise à jour ${MESMAJ} \" ${DATE}\" " tutu@exemple.fr
exit 1
fi
if [ ! -s "${HOMEMAJ}/${REPMAJ}/${REPLIST}/${LIST}" ]
then
echo "le fichier ${LIST} n'existe pas" | mail -s "error ( rdft.sh ) de mise à jour ${MESMAJ} \" ${DATE}\" "tutu@exemple.fr
exit 1
fi
if [ -s "${HOMEMAJ}/${REPMAJ}/${LISTEFICH}" ]
then
rm -f ${HOMEMAJ}/${REPMAJ}/${LISTEFICH}
fi
ls ${HOMEMAJ}/${REPMAJ}/${VERSION}/*.* | awk -F ''${HOMEMAJ}'/'${REPMAJ}'/'${VERSION}'/' '{print $2}' >> ${HOMEMAJ}/${REPMAJ}/${LISTEFICH}
if [ -s "${HOMEMAJ}/${REPMAJ}/${LISTEFICH}" ]
then
if [ -s ${LOGFILE} ]
then
echo "##################" >> ${LOGFILE}
fi
for numag in `cat ${HOMEMAJ}/${REPMAJ}/${REPLIST}/${LIST}`
do
cd ${HOMEMAJ}/$numag;rm -f *.*;cat ${HOMEMAJ}/${REPMAJ}/${LISTEFICH} | xargs -i sh -c 'ln '${HOMEMAJ}'/'${REPMAJ}'/'${VERSION}'/{} {}'
ls ${HOMEMAJ}/$numag/*.* >> ${LOGFILE}
done
exit 0
else
echo "le fichier ${LISTEFICH} n'existe pas" | mail -s " error ( rdft.sh ) de mise à jour ${MESMAJ} \"${DATE}\" " tutu@exemple.fr
exit 1
fi |
Partager