함수 기능
파일의 최정 접근 시간과 최종 변경 시간을 변경하는 시스템 호출
함수 원형
utimebuf 구조
struct utimbuf {
    time_t actime;		// 접근 시간
    time_t modtime;		// 수정 시간
};#include <utime.h>
#include <sys/types.h>
int utime(const char *filepath, const struct utimbuf *time);리턴 값 : 성공시 0 에러시 -1
함수 파라메터
filepath
대상 파일 경로
time
변경될 시간
함수 예제
#include <stdio.h>
#include <stdlib.h> 
#include <unistd.h> 
#include <fcntl.h> 
#include <sys/stat.h> 
#include <utime.h>
int main(int argc, char *argv[]){
    struct utimbuf time_buf;
    struct stat statbuf;
    int fd;
    int i;
    for(i =1; i<argc; i++){
        if(stat(argv[i], &statbuf)<0){
            fprintf(stderr,"stat error for %s\n",argv[i]);
            continue;
        }
        if((fd=open(argv[i],O_RDWR | O_TRUNC))<0){
            fprintf(stderr, "open error for %s\n",argv[i]);
            continue;
        }
        close(fd);
        time_buf.actime = statbuf.st_atime;
        time_buf.modtime = statbuf.st_mtime;
        if(utime(argv[i], &time_buf)<0){
            fprintf(stderr, "utime error for %s\n",argv[i]);
            continue;
        }
    }
exit(0);
}
리눅스시스템 프로그래밍 - 홍지만 저
교재 내에 있는 예제를 바탕으로 작성한 글 입니다.
'C & LINUX' 카테고리의 다른 글
| C / LINUX fork() (0) | 2022.05.02 | 
|---|---|
| C / LINUX opendir(3) readdir(3) rewinddir(3) closedir(3) telldir(3) seekdir(3) (0) | 2022.05.02 | 
| C / LINUX getcwd(2) get_current_dir_name(2) (0) | 2022.05.02 | 
| C / LINUX chdir(2) fchdir(2) (0) | 2022.05.02 | 
| C / LINUX mkdir(2) rmdir(2) (0) | 2022.05.02 |