리눅스 touch 명령어: 파일 생성 및 수정 시간 변경하기

리눅스 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
리눅스 touch 명령어 새 파일 생성하기 예제

2) 파일의 수정 시간만 변경

$ touch -m existingfile.txt
리눅스 touch -m 옵션으로 수정 시간 변경 예제

3) 지정한 시간으로 타임스탬프 변경(-t)

-t 뒤에 YYYYMMDDhhmm(필요 시 .ss) 형식으로 입력합니다.

$ touch -t 202310281030 existingfile.txt
$ touch -t 202310281030.45 existingfile.txt   # 초까지 지정
리눅스 touch -t 옵션으로 지정 시간 설정 예제

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를 함께 사용해 불필요한 파일 생성을 막으세요.

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤