Unix에서 파일 생성 날자 및 시간을 알수있는 방법에 대해.
글쓴이: 익명 사용자 / 작성시간: 월, 2002/01/14 - 7:59오후
Unix에서 파일생성 날자및 시간을 알아내어
현재시간과 비교하여 보관기간이 지난 파일들을
삭제해주려합니다.
어떤 구조체나 함수를 이용하면 되는지 아시는분 부탁드립니다.
stat함수이용하면..
time_t st_atime; /* Time of last access */
time_t st_mtime; /* Time of last data modification */
time_t st_ctime; /* Time of last file status change */
와같이 마지막 액세스시간, 수정시간, 상태변경시간은 알수있는데,
파일최초생성날자및 시각은 어케 알수있는지 궁금합니다.
Forums:
Re: Unix에서 파일 생성 날자 및 시간을 알수있는 방법에 대해.
struct stat {
dev_t st_dev;
ino_t st_ino;
mode_t st_mode;
nlink_t st_nlink;
uid_t st_uid;
gid_t st_gid;
dev_t st_rdev;
off_t st_size;
timestruc_t st_atim;
timestruc_t st_mtim;
timestruc_t st_ctim; <-- 얘가 생성 시간입니다.
blksize_t st_blksize;
blkcnt_t st_blocks;
char st_fstype[_ST_FSTYPSZ];
};
화일은 /usr/include/sys/stat.h에 있습니다.
Re^2: Unix에서 파일 생성 날자 및 시간을 알수있는 방법에 대해
st_ctime은 파일 생성시간이 아닙니다.
그렇게 잘못 알고 있는 사람이 적지 않은듯...
st_mtime과 st_ctime을 명확하게 구분하지 못하는 사람도 많더군요.
man 2 stat
st_atime Time when file data last accessed. Changed by the
mknod(2),
utimes(2) and read(2) system calls.
st_mtime Time when file data last modified. Changed by the
mknod(2),
utimes(2) and write(2) system calls.
st_ctime Time when file status was last changed (inode data
modifica-
tion). Changed by the chmod(2), chown(2), link(2),
mknod(2), rename(2), unlink(2), utimes(2) and write
(2) sys-
tem calls.
댓글 달기