SnipX Posted May 21, 2008 Share Posted May 21, 2008 Bonjour, je fais un programme en C actuellement, et j'aimerais savoir si vous connaissez une manière de récupérer un path à partir d'un inode ? Je m'explique : Je surveille un fichier, et je voudrais dire si celui-ci a changé de répertoire ou de nom. Je le "monitore" avec kqueue/kevent sous BSD, mais une fois que je reçois mon évènement comme quoi le fichier a bougé, comment faire pour récupérer le path du fichier ? ( je ne sais pas si j'ai été très clair, n'hésitez pas à me le dire ) Link to comment Share on other sites More sharing options...
Mephisto Posted May 22, 2008 Share Posted May 22, 2008 un find /* -inum numero_d_inode va te renvoyer le chemin complet vers ton fichier (je met /*, l'ideal etant bien sur de limiter au maximum le champ de recherche comme /var/log/* si tu es sur que le fichier traine dans tes log) Link to comment Share on other sites More sharing options...
SnipX Posted May 22, 2008 Author Share Posted May 22, 2008 Merci de ta réponse, mais en fait je précise bien que je fais un programme en C, je ne le fais pas en bash Je voulais savoir s'il existait une fonction qui permettait de faire cela, mais visiblement après toutes les docs que j'ai lu je ne crois pas :( Link to comment Share on other sites More sharing options...
Mephisto Posted May 23, 2008 Share Posted May 23, 2008 sur le moment, j'avoue que je pensais plus a un fork() dup2() system(), ... (chuis un peu gore des fois) ; mais tu aurais pu en deduire qu'en gros, c'est un ls -R: tu fais un readdir, tu lstat tes fichiers en regardant leur numero d'inode (st_ino dans la struct stat si je me souviens bien) bonne continuation Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.