utime函数

utime函数:对一个文件的访问和修改时间

#include <utime.h>
int utime( const char *pathname, const struct utimbuf *times );
                                       返回值:若成功则返回0,若出错则返回-1

此函数所使用的数据结构是:

struct utimbuf {
    time_t actime;    /* access time */
    time_t modtime;    /* modification time */
}

程序实例:

#include "apue.h"
#include <fcntl.h>
#include <utime.h>

int main(int argc,char *argv[] )

{
  int i,fd;
  struct stat statbuf;
  struct utimbuf timebuf;

  for (i=1;i<argc;i++)
  {
    if (stat(argv[i],&statbuf)<0)
    {
    /*取得当前时间*/
    err_ret("%s:stat error",argv[i]);
    continue;
    }
    if ((fd=open(argv[i],O_RDWR|O_TRUNC))<0)
    {
    /*截短*/
    err_ret("%s:open error ",argv[i]);
    continue;
  }
  close(fd);
  timebuf.actime=statbuf.st_atime;
  timebuf.modtime=statbuf.st_mtime;
  if(utime(argv[i],&timebuf)<0)
  {
  /*retset time*/
  err_ret("%s: utime error",argv[i]);
  continue;
  }
  }
  exit(0);
}

运行结果:

时间: 2024-09-30 10:39:50

utime函数的相关文章

UNIX环境编程学习笔记(11)——文件I/O之文件时间以及 utime 函数

lienhua342014-09-16 1 文件的时间 每个文件都有三个时间字段,如表 1 所示. 表 1: 文件的三个时间字段 说明 字段 st_atime 文件数据的最后访问时间 st_mtime 文件数据的最后修改时间 st_ctime i 节点状态的最后更改时间 最后修改时间是文件内容最后一次被修改的时间.更改状态时间是该文件的 i 节点最后一次被修改的时间. 2 utime 函数 utime 函数提供了对文件最后访问时间和最后修改时间的更改功能. #include <utime.h>

文件和目录之utime函数

一个文件的访问和修改时间可以用utime函数更改. #include <utime.h> int utime( const char *pathname, const struct utimbuf *times ); 返回值:若成功则返回0,若出错则返回-1 此函数所使用的数据结构是: struct utimbuf { time_t actime; /* access time */ time_t modtime; /* modification time */ } 此结构中的两个时间值是日历

文件和目录详解(九)---三种文件时间以及utime函数详解

文件有三种时间,分别是: 文件数据的最后访问时间------read函数会修改 文件数据的最后修改时间------write函数会修改 i 节点状态的最后更改时间----unlink函数会修改 要区分文件数据的修改时间和 i 节点状态更改时间,因为文件数据和 i 节点信息是分开存储的,有些系统调用只会影响 i 节点中的信息,而不会影响文件的数据部分,比如 unlink 函数. 使用 utime 函数可以修改一个文件的三种时间. ==================================

程序4-6 utime函数实例

1 //http://blog.chinaunix.net/uid-24549279-id-71355.html 2 /* 3 ============================================================================ 4 Name : test.c 5 Author : blank 6 Version : 7 Copyright : Your copyright notice 8 Description : 程序4-6 utime函

十四、文件和目录——文件时间和utime函数

14.1 文件时间 存在于 stat 结构体中 14.2 文件时间函数 14.2.1 介绍 utime(修改文件的存取时间和更改时间) 相关函数 utimes,stat 1 #include <sys/types.h> 2 #include <utime.h> 3 int utime(const char * filename, struct utimbuf * buf); 函数功能 更改文件的存取和修改时间 utime 会自动更新 st_ctime 的值 参数 buf 空指针:则

UNIX,基础知识,文件IO,文件和目录

2015.1.27星期二,早晨阴天,中午下雪了今天上午老师不上课,程序语句,记一下:main(void){ int c; while((c = getc(stdin)) != EOF) if(putc(c,stdout) == EOF) 将字符写到标准输出 err_sys("output error"); if(ferror(stdin)) err_sys("input error"); exit(0);} 从标准输入读命令并执行:int main(){ char

[APUE]文件和目录(中)

一.link.unlink.remove和rename 一个文件可以有多个目录项指向其i节点.使用link函数可以创建一个指向现存文件连接 #include <unistd.h> int link(const char *existingpath, const char *newpath); 返回值:成功为0,出错为-1 该函数创建一个新目录项newpath,指向现存文件existingpath,如果newpath已存在则返回出错. 为了删除一个现存的目录项,可以调用unlnk函数. #inc

APUE学习笔记:第四章 文件和目录

4.1 引言 本章将描述文件的特征和文件的性质 4.2 stat.fstat和lstat函数 #include<sys/stat.h> int stat(const char *restrict pathname,struct stat *restrict buf); int fstat(int filedes,struct stat *buf) int lstat(const char *restrict pathname,struct stat *restrict buf); 三个函数的返

python 各模块

01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支持模块 12 _ _builtin_ _ 模块 121 使用元组或字典中的参数调用函数 1211 Example 1-1 使用 apply 函数 1212 Example 1-2 使用 apply 函数传递关键字参数 1213 Example 1-3 使用 apply 函数调用基类的构造函数 122