Linux
2014-08-19
Aliases: utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2), utimes(2)
manpages-it
Italian version of the manual pages
man-pages-it
Italian man (manual) pages from the Linux Documentation Project
manpages-dev
Manual pages about using GNU/Linux for development
man-pages
Linux kernel and C library user-space interface documentation
NOME
utime, utimes - cambia l’ultimo orario di accesso e di modifica di un file
SINTASSI
#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]);
DESCRIZIONE
Nota: le applicaizoni moderne potrebbero preferire le interfacce descritte in utimensat(2).
La chiamata di sistema utime() cambia gli orari di accesso e di modifica dell’inode specificato da filename rispettivamente con quelle contenute nei campi actime e modtime di times.
Se times è NULL, allora gli orari di accesso e modifica del file sono impostati a quelli correnti.
Cambiare le marcature orarie è permesso quando: o il processo ha i privilegi appropriati, o la user ID effettiva dell’utente è uguale alla user ID del file, o times è NULL e il processo ha permessi di scrittura sul file.
La struttura utimbuf è la seguente:
struct utimbuf { time_t actime; /* ora di accesso */ time_t modtime; /* ora di modifica */ };
La chiamata di sistema utime() permette di specificare le marcature orarie con una risoluzione di 1 secondo.
La chiamata di sistema utimes() è simile, ma gli argomenti di times fanno riferimento ad un array, non a una struttura. Gli elementi di questo array sono strutture timeval, che permettono una precisione di 1 microsecondo nello specificare data e ora. La struttura timeval è la seguente:
struct timeval { long tv_sec; /* secondi */ long tv_usec; /* microsecondi */ };
times[0] specifica la nuova ora di accesso, e times[1] specifica la nuova ora di modifica. Se times è NULL, analogamente a utime(), le date di accesso e modifica del file sono impostate a quelle correnti.
VALORI RESTITUITI
In caso di successo viene restituito zero. In caso di errore viene restituito -1 e errno è impostato di conseguenza.
ERRORI
EACCES | Il permesso di ricerca è negato per una delle directory nel prefisso del percorso di path (vedere anche path_resolution(7)). |
EACCES | times è NULL, l’ID effettivo dell’utente chiamante non corrisponde a quello del proprietario del file, il chiamante non ha accesso in scrittura al file, e il chiamante non ha i privilegi necessari (Linux: non ha capacità CAP_DAC_OVERRIDE o CAP_FOWNER). |
ENOENT | filename non esiste. |
EPERM | times non è NULL, l’UID effettivo del chiamante non corrisponde al proprietario del file, e il chiamante non ha i privilegi necessari (Linux: non ha capacità CAP_FOWNER) |
EROFS | path risiede su un filesystem in sola lettura. |
CONFORME A
utime(): SVr4, POSIX.1-2001. POSIX.1-2008 marca utime() come obsoleto.
utimes(): 4.3BSD, POSIX.1-2001.
utimes(): 4.3BSD, POSIX.1-2001.
NOTE
Linux non permette di cambiare data e ora su un file immutabile, o di impostarle a qualcosa di diverso dall’ora corrente in un file di tipo append-only.
VEDERE ANCHE
COLOPHON
Questa pagina fa parte del rilascio 4.08 del progetto Linux man-pages. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l’ultima versione di questa pagina si trovano su https://www.kernel.org/doc/man-pages/.
La versione italiana fa parte del pacchetto man-pages-it v. 4.08, a cura di: ILDP "Italian Linux Documentation Project" http://www.pluto.it/ildp
Per la traduzione in italiano si pu\(‘o fare riferimento a http://www.pluto.it/ildp/collaborare/
Segnalare eventuali errori di traduzione a ildp
Per la traduzione in italiano si pu\(‘o fare riferimento a http://www.pluto.it/ildp/collaborare/
Segnalare eventuali errori di traduzione a ildp