Les liens symboliques unix sont des pointeurs vers un autre fichier. Non seulement le fichier mais aussi le lien symbolique a un ctime, mtime, .... Je sais que le temps de liens symboliques peut être consulté, car ls
l'affiche. Si j'utilise l'un des File#ctime
, File#mtime
de ruby, ..., j'obtiens toujours l'attribut du fichier pointé par le lien symbolique, pas du lien symbolique. Comment puis-je lire ces valeurs dans ruby? Si ce n'est pas possible dans ruby, dites-moi comment le faire en C. J'écrirais ma propre extension c dans ce cas.Comment accéder à ctime, mtime, ... d'un lien symbolique?
6
A
Répondre
10
Utilisez File#lstat()
. Exemple:
# This is a dummy symlink; there's no file named "foo".
ln -s foo bar
# Run irb.
irb(main):001:0> File.lstat("bar")
=> #<File::Stat dev=0x801, ino=90113, mode=0120777, nlink=1, uid=1000, gid=1000, rdev=0x0, size=3, blksize=4096, blocks=0, atime=2010-01-05 17:59:06 -0500, mtime=2010-01-05 17:59:05 -0500, ctime=2010-01-05 17:59:05 -0500>
# Get the mtime of the link.
irb(main):002:0> File.lstat("bar").mtime
=> 2010-01-05 17:59:05 -0500
1
lstat()
peut le faire en C; pas sûr s'il y a un équivalent Ruby.
1
Il sont non seulement les attributs du lien symbolique et les attributs de la cible finale, mais aussi, si le lien symbolique est lui-même à un autre lien symbolique, une ou plusieurs étapes intermédiaires; Pour obtenir tous les attributs, vous devez utiliser lstats dans une boucle de readlink.
Questions connexes
- 1. Problème avec lien symbolique
- 2. Lien symbolique Diapositives PowerPoint
- 3. Comment créer un lien symbolique avec SCons?
- 4. Comment accéder par programme au chemin cible d'un lien symbolique Windows?
- 5. Problème de lien ACL et symbolique
- 6. lien symbolique vers le compartiment de bits
- 7. Création d'un lien symbolique rompu avec Python
- 8. dossiers dans un lien symbolique bash
- 9. Cygwin SVN lien symbolique checkout cassé
- 10. Vérifie si un lien symbolique a changé
- 11. Créer un lien symbolique vers un programme
- 12. Copier le lien symbolique dans Solaris
- 13. Comment faire un lien symbolique avec cygwin dans Windows 7
- 14. Comment vérifier où pointe le lien symbolique dans Ant
- 15. boîte à outils symbolique
- 16. Quel est le point du lien symbolique vers com.apple.PeoplePicker.plist?
- 17. SVN ignorer un lien symbolique vers un répertoire
- 18. chmod() et chown() d'un fichier de lien symbolique en PHP
- 19. Lien symbolique vers le dernier fichier d'un dossier
- 20. Remplacer le lien symbolique important 'en toute sécurité'
- 21. SVN un lien symbolique pointant vers mon répertoire personnel
- 22. Utilisation de Git avec des répertoires partagés (lien symbolique)
- 23. File.delete() ne supprime pas le lien symbolique sur Android?
- 24. Supprimer un lien symbolique lorsque le dossier d'origine est supprimé
- 25. python - Importer un fichier qui est un lien symbolique
- 26. Erreur py2app: l'objet 'module' n'a pas d'attribut 'lien symbolique' "
- 27. Lien symbolique, non accessible depuis l'ordinateur du réseau. get error "Le lien symbolique ne peut pas être suivi car son type est désactivé"
- 28. Est-il possible de faire le tronc dans svn point à une branche (un lien symbolique)
- 29. Changement d'horloge C++ et CTime & System
- 30. Précision de mtime stat dans Windows
Il semble y avoir un 'File.lstat' dans ruby, qui fait la même chose. – johannes