Ce que nous voulons faire, c’est transférer avec rsync des fichiers au format XML. Le script devra analyser un dossier pour trouver le dernier répertoire à l’intérieur de ce dossier (par date de création) puis à l’intérieur de ce dossier trouver les fichiers d’un modèle spécifique et les compresser dans un tar.gz.
#!/bin/bash
EXPORT_DIR=/appli/aaf/export/fichiers/ENTTSSERVICES
DEST=/appli/aaf/export/fichiers/ZEPHIR
# Retrieve the last directory inside EXPORT_DIR
LAST_DIR=$(ls -t $EXPORT_DIR | head -1)
# Construct the final path
SRC=$EXPORT_DIR/$LAST_DIR
#echo $PATH
#echo "Processing $i file..."
# Create the directory if not exist
mkdir -p ${DEST}
cd ${SRC}
# Get files with a specific pattern '9830' of XML type and get the first part (before _) of the filename
# We create a tar.gz archive inside the DEST folder
/usr/bin/find . -maxdepth 1 -name '9830????*.xml' | /usr/bin/cut -d_ -f 1 | /bin/sort -u |
while read rne; do
/bin/tar -cvzf ${DEST}/"$rne".tar.gz "$rne"*.xml
done