NAME

futimes, lutimes - 파일 타임스탬프 바꾸기

SYNOPSIS

#include <sys/time.h>

int futimes(int fd, const struct timeval tv[2]);
int lutimes(const char *filename, const struct timeval tv[2]);

glibc 기능 확인 매크로 요건 (feature_test_macros(7) 참고):

futimes(), lutimes():
glibc 2.19부터:
_DEFAULT_SOURCE
glibc 2.19 및 이전:
_BSD_SOURCE

DESCRIPTION

futimes()utimes(2)와 같은 방식으로 파일의 접근 시간과 수정 시간을 바꾼다. 차이는 경로명이 아니라 파일 디스크립터를 통해 타임스탬프를 바꿀 파일을 지정한다는 점이다.

lutimes()utimes(2)와 같은 방식으로 파일의 접근 시간과 수정 시간을 바꾼다. 차이는 filename이 심볼릭 링크를 가리키는 경우 그 링크를 따라가지 않는다는 점이다. 대신 그 심볼릭 링크의 타임스탬프를 바꾼다.

RETURN VALUE

성공 시 0을 반환한다. 오류 시 -1을 반환하며 오류를 나타내도록 errno를 설정한다.

ERRORS

오류는 utimes(2)와 마찬가지이되, futimes()에 다음이 추가된다.

EBADF
fd가 유효한 파일 디스크립터가 아니다.
ENOSYS
/proc 파일 시스템에 접근할 수 없다.

lutimes()에서는 다음 오류가 추가로 발생할 수 있다.

ENOSYS
커널이 이 호출을 지원하지 않는다. 리눅스 2.6.22나 이후 버전이 필요하다.

VERSIONS

glibc 2.3부터 futimes()가 사용 가능하다. glibc 2.6부터 lutimes()가 사용 가능한데, 커널 2.6.22부터 지원하는 utimensat(2) 시스템 호출을 이용해 구현되어 있다.

ATTRIBUTES

이 절에서 사용하는 용어들에 대한 설명은 attributes(7)를 보라.

인터페이스 속성
futimes(), lutimes() 스레드 안전성 MT-Safe

CONFORMING TO

이 함수들은 어떤 표준에도 명세되어 있지 않다. 리눅스를 제외하면 BSD 계열에서만 사용 가능하다.

SEE ALSO

utime(2), utimensat(2), symlink(7)


2021-03-22