web-dev-qa-db-fra.com

Comment obtenir un journal à quel moment un répertoire a été modifié?

Dans mon répertoire de travail actuel, il y a un sous-répertoire appelé modelled_data

Je souhaite obtenir des informations sur les dernières modifications (éventuellement 10) du sous-répertoire (y compris ses sous-répertoires et fichiers), en particulier sur les horodatages et les types de modifications. Est-il disponible via les terminaux? Quelles commandes ou options dois-je essayer? ls -la donne une liste des dernières modifications de tous les sous-répertoires du pwd. Mais je veux quelques dernières modifications d’un répertoire spécifique que je veux suivre.

2
Della

Il n'y a pas de tels journaux. Vous ne pouvez voir l'heure de la dernière modification qu'avec la commande stat. Cela dit, vous pouvez utiliser la commande inotifywait du package _inotify-tools_. Vous pouvez trouver un exemple d'utilisation sur l'une de mes autres réponses . Vous pouvez également utiliser le package watchdog Python. Un exemple d'utilisation est présenté dans watchdog ' documentation . La sortie ressemble à ceci:

_2018-11-10 21:32:45 - Modified directory: ./.config/Qlipper
2018-11-10 21:32:45 - Modified file: ./.config/Qlipper/qlipper.ini.lock
2018-11-10 21:32:45 - Created file: ./.config/Qlipper/qlipper.ini.yJ1483
_

Vous pouvez démarrer ceci en tant que commande _python3 watchdog_example.py >> /var/log/my_directory.log &_ à partir de /etc/rc.local et alto - vous avez vous-même un enregistreur d'événements de répertoire qui fonctionne.

2