Possibilité du shell??
brasco
-
jisisv Messages postés 3678 Statut Modérateur -
jisisv Messages postés 3678 Statut Modérateur -
Bonjour,
Tout le monde, je suis actuellement entrain de tester plusieurs combinaison pour arriver à mes fins. Ma question est la suivante est-il possible de savoir si un fichier a été rajouté dans un répertoire et si oui lequel ?
Piste explorée :
j'essaye de regarder la dernière modification de ce "Répertoire"
premier problème c'est la comparaison du résultat (avant / maintenant )..
Merci d'avance pour vos conseils et votre temps
Tout le monde, je suis actuellement entrain de tester plusieurs combinaison pour arriver à mes fins. Ma question est la suivante est-il possible de savoir si un fichier a été rajouté dans un répertoire et si oui lequel ?
Piste explorée :
j'essaye de regarder la dernière modification de ce "Répertoire"
premier problème c'est la comparaison du résultat (avant / maintenant )..
Merci d'avance pour vos conseils et votre temps
3 réponses
-
salut,
mkdir mon_repertoire lastModif=$(stat -c%y mon_repertoire) ##plus tard currentStat=$(stat -c%y monRep) if test $lastModif -eq $currentStat #je ne mets pas de guillemets car c'est des nombres entiers then echo "pas de modification de mon_repertoire" else echo "il y a du nouveau dans mon_repertoire" lastModif=$currentStat fi
ne tente pas d'utiliser 'ls', le format d'affichage n'est pas stable
alors que celui de 'stat', c'est toi qui le choisit! -
hello
trouver tous les fichiers modifiés depuis 2h :$ touch -d "2 hours ago" /tmp/x $ find ~ -newer /tmp/x
-
Si tu tolères l'utilisation d'une fonction blocante, utilise l'appel système inotify
Voir Inotify Example
Après quelques modifications des includes de l'exemple fourni dans le lien:johand@osiris: ~/src/C/inotify $ grep inotify_add inotify_example.c wd = inotify_add_watch( fd, "/tmp", IN_CREATE | IN_DELETE ); johand@osiris: ~/src/C/inotify $ gcc -Wall -o inotify_example inotify_example.c inotify_example.c: In function `main': inotify_example.c:69:1: warning: control reaches end of non-void function [-Wreturn-type] johand@osiris: ~/src/C/inotify $ ./inotify_example & [1] 7914 johand@osiris: ~/src/C/inotify $ touch /tmp/truc New file truc created.
Regarder:
inotify_add_watch (2) - add a watch to an initialized inotify instance
inotify_init (2) - initialize an inotify instance
inotify_init1 (2) - initialize an inotify instance
inotify_rm_watch (2) - remove an existing watch from an inotify instance