#26 Le 04/06/2014, à 09:16
- omnimax
Re : problème script surveillance dernier fichier
edit :
la mise en forme ne fonctionne pas en msmtp donc je l'ai viré
mon script fonctionne via
sudo ln -s emplacementreseau nouveau lien
c'est pas propre et ne fonctionne qu'à partir de l'ordi du lien, mais au moins cela fonctionne !
#!/bin/bash
#dropalert
mail="maildestinataire"
path="votreemplacement"
while fic=$(inotifywait -e create "$path" -r --format %w%f); do
#sleep 60s
rep=$(awk -F "/" '{print $6}' <<< "$fic")
fichier=$(awk -F "/" '{print $7}' <<< "$fic")
txt=$(echo -e "Subject : Un nouveau fichier est apparu sur votre Dropbox ! \n\n Dans le dossier "$rep", il s'agit du fichier : "$fichier" \n\n Ce mail est automatisé.")
echo "$txt" | msmtp "$mail"
done
exit 0
Dernière modification par omnimax (Le 04/06/2014, à 09:16)
14.04 unity et Linux Mint KDE 13 zsh-meilleur shell script fire
Hors ligne
#27 Le 29/06/2014, à 09:05
- patrick L
Re : problème script surveillance dernier fichier
Tu pourrais faire comme ça :
while fic=$(inotifywait -e create /tmp/test --format %w%f) do ls -lc "$fic" done
Ainsi, tu fais le ls que sur le fichier nouvellement créé.
Je pense que le "ls -clt" donne un classement bizarre car -c ne donne pas la date de création mais la date de dernier changement de statut.
s'il veut les fichiers par ordre de creation ou de modification... il mets dans un fichier text.
liste="/tmp/files.list"
touch $liste
inotifywait -e create /tmp/test --format "%T %f" --time-format "%Y-%m%B-%d_%H-%M-%S" | do
while read t f ; do
echo " $t : $f" >> $liste
done
Hors ligne