리눅스의 touch 명령은 파일의 타임스탬프(timestamp) 값을 현재 시간으로 변경하는 명령어다. 만약 존재하지 않는 파일이라면 빈 파일을 생성한다.
touch [파일이름]
리눅스 시스템에서는 파일에 세 가지 종류의 타임스탬프를 관리한다.
- atime : 최종 접근시간 (access time)
- ctime : 최종 상태 변경시간 (change time)
- mtime : 최종 수정 시간 (modify time)
기본적으로 touch 명령으로 지정한 파일의 세 가지 타임스탬프 모두 갱신된다. 파일 이름은 여러개를 한번에 지정할 수도 있다.
[20:12:48 temp]$ ls -l
total 8
-rw-r--r-- 1 user group 1932 2 11 18:05 file1
-rw-r--r-- 1 user group 0 2 11 18:04 file2
[20:12:56 temp]$ touch file1
[20:13:01 temp]$ ls -l
total 8
-rw-r--r-- 1 user group 1932 2 11 20:13 file1
-rw-r--r-- 1 user group 0 2 11 18:04 file2
[20:13:03 temp]$ touch file3
[20:13:09 temp]$ ls -l
total 8
-rw-r--r-- 1 user group 1932 2 11 20:13 file1
-rw-r--r-- 1 user group 0 2 11 18:04 file2
-rw-r--r-- 1 user group 0 2 11 20:13 file3
파일의 정확한 타임스탬프 값은 stat 명령어를 이용할 수 있다.
[18:14:31 temp]$ stat file1
16777220 319352322 -rw-r--r-- 1 user group 0 1932 "Feb 11 20:13:01 2022" "Feb 11 20:13:01 2022" "Feb 11 20:13:01 2022" "Feb 11 18:04:54 2022" 4096 8 0 file1
[18:14:33 temp]$ stat file2
16777220 319352323 -rw-r--r-- 1 user group 0 0 "Feb 11 18:04:56 2022" "Feb 11 18:04:56 2022" "Feb 11 18:04:56 2022" "Feb 11 18:04:56 2022" 4096 0 0 file2
[18:14:39 temp]$ stat file3
16777220 319353152 -rw-r--r-- 1 user group 0 0 "Feb 11 20:13:09 2022" "Feb 11 20:13:09 2022" "Feb 11 20:13:09 2022" "Feb 11 20:13:09 2022" 4096 0 0 file3
touch 명령 옵션
옵션 | 설명 |
-a | 현 시간으로 파일의 접근 시간과 변경 시간을 수정 |
-c | 기존 파일이 없으면 파일을 생성하지 않음 |
-d | 지정한 시간으로 접근 시간과 수정 시간을 설정하고, 변경시간은 현재 시간으로 설정 yyyy-MM-dd hh:mm:ss 포맷으로 지정 |
-m | 현 시간으로 파일의 수정시간과 변경 시간을 설정 |
-r | 지정한 파일이 가지고 있는 atime과 mtime으로 파일이 수정되고 변경시간은 현재 시간으로 수정 |
-t | 지정한 시간으로 접근 시간, 수정시간을 설정하고 변경 시간은 현재시간으로 설정 yyyyMMddhhmm.ss 포맷으로 지정 |
--help | 사용법 출력 |
--version | 버전 정보 출력 |
관련글
댓글