utime   Début   Suivant   Sommaire   Préc.page.lue   Accueil
Section: Manuel du programmeur Linux (2)
Updated: 23 mai 2008
Sommaire  



NOM   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
utime, utimes - Modifier la date d'accès ou de modification d'un i-noeud  



SYNOPSIS   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
#include <sys/types.h>

#include <utime.h> int utime(const char *filename, const struct utimbuf *times); #include <sys/time.h> int utimes(const char *filename, const struct timeval times[2]);
 



DESCRIPTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
L'appel système utime() modifie les dates d'accès et de modification de l'i-noeud indiqué par filename pour les valeurs contenues respectivement dans les champs actime et modtime de times. Si times est NULL, les dates d'accès et de modification sont mises à la date actuelle.

La modification des horodatages est permise lorsque soit le processus a les privilèges appropriés, soit l'UID effectif est égal à l'UID du fichier, soit times est nul et le processus a la permission d'écriture sur le fichier. La structure utimbuf est la suivante :

struct utimbuf {
    time_t actime;  /* heure d'accès  */
    time_t modtime; /* heure de modification */
};

L'appel système utime() permet des spécifications d'horodatage avec une résolution d'une seconde.

L'appel système utimes() est similaire mais l'argument times fait référence à un tableu au lieu d'une structure, et la structure permet une résolution d'une microseconde pour les horodatages. La structure timeval est la suivante :

struct timeval {
    long    tv_sec;         /* secondes      */
    long    tv_usec;        /* microsecondes */
};

times[0] indique la nouvelle heure d'accès, et times[1] indique la nouvelle heure de modification. Si times est NULL, demanière analogue à utime(), les heures d'accès et modification du fichier sont définies à l'heure actuelle.  




VALEUR RENVOYÉE   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
Ces appels renvoient 0 s'ils réussissent ou -1 s'ils échouent auquel cas errno contient le code d'erreur.  



ERREURS   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
Plusieurs erreurs peuvent se produire, les plus courantes étant :
EACCES
La permission de parcours est refusée pour l'un des répertoires du chemin path (voir aussi path_resolution(7)).
EACCES
times est NULL, l'UID effectif de l'appelant ne correspond pas au propriétaire du fichier, l'appelant n'a pas la permission d'écriture sur le fichier et l'appelant n'est pas privilégié (Linux : n'a ni la capacité CAP_DAC_OVERRIDE, ni la capacité CAP_FOWNER).
ENOENT
filename n'existe pas.
EPERM
times n'est pas NULL, l'UID effectif de l'appelant ne correspond pas au propriétaire du fichier et l'appelant n'est pas privilégié (Linux : n'a pas la capacité CAP_FOWNER).
EROFS
path se trouve sur un système de fichiers en lecture seule.
 



CONFORMITÉ   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
utime() : SVr4, POSIX.1-2001.
utimes() : BSD 4.3, POSIX.1-2001.  



NOTES   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
Linux n'autorise pas la modification d'horodatages sur les fichiers immuables, ou l'horodatage avec autre chose que la date courante sur les fichiers en ajout seulement.

Dans libc4 et libc5, utimes() est juste une enveloppe à utime() et ne permet donc pas des résolutions inférieure à la seconde.

POSIX.1-2001 considère utimes() comme un héritage du passé, ce qui est étrange puisqu'il fournit plus de fonctionnalités que utime().  




VOIR AUSSI   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
chattr(1), futimesat(2), stat(2), futimes(3)  



TRADUCTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 15 octobre 1996 et révisée le 6 juin 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 utime ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


 



Sommaire   Début   Suivant   Sommaire   Préc.page.lue   Accueil
NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
CONFORMITÉ
NOTES
VOIR AUSSI
TRADUCTION

Table des mots clés   Début   Suivant   Sommaire   Préc.page.lue   Accueil
EACCESERREURS
ENOENTERREURS
EPERMERREURS
EROFSERREURS



Ce document a été créé par man2html suivi de man2html.pl, le 17/10/2008 17:51:48, en utilisant les pages de 'man'.
 

Valid HTML 4.01 Transitional