utime(2) System Calls Manual utime(2) NOM utime, utimes - Modifier la date d'acces ou de modification d'un fichier BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int utime(const char *filename, const struct utimbuf *_Nullable times); #include int utimes(const char *filename, const struct timeval times[_Nullable 2]); DESCRIPTION Note: les applications modernes peuvent utiliser les interfaces decrites dans utimensat(2). L'appel systeme utime() change les dates d'acces et de modification de l'inoeud indique par filename pour les valeurs contenues respectivement dans les champs actime et modtime de times. L'heure du changement d'etat (ctime) sera reglee a l'heure actuelle, meme si les autres horodatages ne sont pas vraiment modifes. Si times est NULL, les dates d'acces et de modification sont mises a l'heure actuelle. La modification des horodatages est permise soit lorsque le processus a les privileges appropries, soit quand l'UID effectif est egal a l'UID du fichier, soit lorsque times est NULL et que le processus a la permission d'ecriture sur le fichier. La structure utimbuf est la suivante : struct utimbuf { time_t actime; /* heure d'acces */ time_t modtime; /* heure de modification */ }; L'appel systeme utime() permet des specifications d'horodatages avec une resolution d'une seconde. L'appel systeme utimes() est similaire mais le parametre times fait reference a un tableau au lieu d'une structure. Les elements de ce tableau sont des structures timeval qui permettent une resolution 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'acces et times[1] indique la nouvelle heure de modification. Si times est NULL, de maniere analogue a utime(), les heures d'acces et modification du fichier sont definies a l'heure actuelle. VALEUR RENVOYEE En cas de succes, zero est renvoye. En cas d'erreur, -1 est renvoye et errno est definie pour preciser l'erreur. ERREURS EACCES La permission de parcours est refusee pour un des repertoires contenu dans le chemin path. (Consultez aussi path_resolution(7).) EACCES times est NULL, l'UID effectif de l'appelant ne correspond pas au proprietaire du fichier, l'appelant n'a pas la permission d'ecriture sur le fichier et l'appelant n'est pas privilegie (Linux : il n'a ni la capacite CAP_DAC_OVERRIDE, ni la capacite CAP_FOWNER). ENOENT filename n'existe pas. EPERM times n'est pas NULL, l'UID effectif de l'appelant ne correspond pas au proprietaire du fichier et l'appelant n'est pas privilegie (Linux : il n'a pas la capacite CAP_FOWNER). EROFS path se trouve sur un systeme de fichiers en lecture seule. STANDARDS POSIX.1-2008. HISTORIQUE utime() SVr4, POSIX.1-2001. POSIX.1-2008 le marque comme etant obsolete. utime() 4.3BSD, POSIX.1-2001. NOTES 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. VOIR AUSSI chattr(1), touch(1), futimesat(2), stat(2), utimensat(2), futimens(3), futimes(3), inode(7) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Jean-Pierre Giraud Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.9.1 2 mai 2024 utime(2)