리눅스에서 타임스탬프는 파일이나 디렉토리의 생성 시간, 수정 시간, 접근 시간 등을 나타냅니다. 이 타임스탬프는 일반적으로 시스템이나 명령어에 의해 자동으로 관리되지만, 수정도 가능합니다.
🔧 타임스탬프 종류
종류 | 의미 | ls 옵션 |
atime | 마지막 접근 시간 | ls -lu |
mtime | 마지막 내용 수정 시간 | ls -l |
ctime | 마지막 메타데이터 변경 시간 | ls -lc |
💡 ctime은 파일의 권한 변경 등으로 갱신되며 직접 수정할 수는 없음.
🛠️ 타임스탬프 수정 방법
1. touch 명령어 사용
✅ 기본 동작
touch file.txt
- atime (접근 시간)과 mtime (수정 시간)을 현재 시간으로 갱신함
✅ 특정 시간으로 타임스탬프 설정
touch -t [[CC]YY]MMDDhhmm[.ss] file.txt
- -t 옵션은 시간을 직접 지정할수있음
- 형식은 년월일시분초 (초는 생략가능함)
✅ mtime만 수정
touch -m -t 202406161530 file.txt
- -m: 수정 시간(mtime)만 설정
- 접근 시간(atime)은 그대로 둠
✅atime만 수정
touch -a -t 202406151000 file.txt
- -a: 접근 시간(atime)만 설정
- 수정 시간(mtime)은 그대로 둠
✅파일의 타임스탬프를 다른 파일과 일치시키기
touch -r source.txt target.txt
- target.txt의 타임스탬프를 source.txt와 동일하게 설정
- -r = reference