리눅스 touch 명령어: 파일 생성 및 수정 시간 변경하기
리눅스의 touch 명령어는 크게 두 가지에 쓰입니다. ① 새 빈 파일 생성, ② 파일의 접근/수정 시간(atime/mtime) 변경. 간단하지만 스크립트 작성이나 배치 작업에서 매우 자주 활용됩니다.
☞ 포스트 기준: CentOS 7 (GNU coreutils)
주요 옵션 및 설명
| 옵션 | 설명 |
|---|---|
-c | 대상 파일이 없을 때 새 파일을 만들지 않음 (no create) |
-a | 접근 시간(atime)만 변경 |
-m | 수정 시간(mtime)만 변경 |
-t | 시간을 [[CC]YY]MMDDhhmm[.ss] 형식으로 지정 |
-d | 자연어 날짜 지정(예: "2023-10-28 10:30", "yesterday") |
-r FILE | 다른 파일 FILE의 시각을 참조하여 동일하게 설정 |
사용 예시
1) 새 파일 생성
$ touch newfile.txt

2) 파일의 수정 시간만 변경
$ touch -m existingfile.txt

3) 지정한 시간으로 타임스탬프 변경(-t)
-t 뒤에 YYYYMMDDhhmm(필요 시 .ss) 형식으로 입력합니다.
$ touch -t 202310281030 existingfile.txt $ touch -t 202310281030.45 existingfile.txt # 초까지 지정

4) 사람이 읽기 쉬운 날짜로 설정(-d)
$ touch -d "2023-10-28 10:30" existingfile.txt $ touch -d "yesterday 09:00" report.log
5) 다른 파일의 시간과 동일하게 설정(-r)
$ touch -r source.txt target.txt
☞ 팁: -a와 -m을 동시에 쓰면 둘 다 갱신됩니다. 파일이 존재하지 않는데 시간만 바꾸고 싶다면 -c를 함께 사용해 불필요한 파일 생성을 막으세요.
관련 이전 게시글
- 리눅스 ls 명령어: 디렉토리 내용 확인하기
- 리눅스 mkdir 명령어: 디렉토리 생성하기
- 리눅스 cat 명령어: 파일 내용 출력하기
- 리눅스 mv 명령어: 파일과 디렉토리 이동 및 이름 변경하기
- 리눅스 rm 명령어: 파일과 디렉토리 삭제하기
이 글이 도움이 되셨다면 공유 부탁 드립니다.



