touch 명령어
리눅스에서 touch 명령어를 사용하면 빈 파일을 생성하거나 파일의 여러 가지 시간을 수정할 수 있다.
$ touch [옵션] [파일명]
위와 같이 사용할 수 있다.
만약 [파일명]이 존재하지 않는다면 용량이 0인 빈 파일을 생성한다.
[파일명]이 존재한다면 파일의 시간을 수정한다. 이때 별도의 옵션을 설정하지 않으면 atime, mtime이 변경된다.
참고) 리눅스의 atime, ctime, mtime 설명
- atime : 최종 접근 시간 (File Access Time)으로 파일에 마지막으로 접근한 시간을 뜻한다.
- ctime : 최종 변경 시간(File Change Time)으로 inode가 변경될 때(파일 권한 수정, 파일 소유자 변경, 하드 링크 생성 등 파일의 속성이 변할 때) ctime도 변경된다.
- mtime : 최종 수정 시간 (File Modify Time)으로 파일의 내용이 마지막으로 수정될 때 변경된다. 파일의 내용이 변하는 것은 파일의 속성이 변하는 것과 같으므로 ctime 값도 함께 변경된다.
자주 사용하는 옵션
- -a : atime 만 현재 시간으로 수정한다.
- -c : [파일명]의 파일이 없더라도 파일을 생성하지 않는다.
- -d : atime과 mtime을 지정한 시간으로 변경한다.
- -m : mitme만 현재 시간으로 수정한다.
- -r [파일명 A] [파일명 B] : [파일명 A] 파일의 atime 및 mtime을 [파일명 B] 파일에 반영한다.
- -t : atime과 mtime을 지정한 시간으로 변경한다. -d 옵션과 시간 형식이 다르다.
참고로 어떤 옵션을 쓰더라도 ctime은 현재시각으로 변경된다.
예시
touch text.txt 명령어로 text.txt라는 빈 파일을 생성했다. 파일 크기가 0인 것을 확인할 수 있다.
해당 파일이 존재할 때 touch 명령어를 사용하면 atime, ctime, mtime이 모두 변경된 것을 확인할 수 있다.
stat 명령어로 파일의 상태를 살펴보면 Access 항목이 atime, Modify가 mtime, Change가 ctime을 나타낸다.
touch -a
-a 옵션을 사용하면 atime을 현재 시각으로 수정할 수 있다. 물론 ctime도 현재 시간으로 수정된다.
touch -d
-d 옵션을 사용하면 atime과 mtime을 원하는 시간으로 수정할 수 있다.
ctime은 현재 시간으로 수정된다.
touch -m
-d 옵션을 사용하면 mtime만 현재 시간으로 수정할 수 있다.
ctime은 현재 시간으로 수정된다.
touch -r
-r 옵션을 사용하면 text2.txt의 atime과 mtime을 text.txt의 시간을 반영할 수 있다.
ctime은 마찬가지로 현재시간으로 수정된다.
touch -t
-t 옵션은 -d 옵션과 동일하게 atime과 mtime을 원하는 시간으로 수정할 수 있지만 시간 형식이 다르다.
yymmddHHMM.SS 형식이다. 역시 ctime은 현재시간으로 수정된다.
'OS > [Linux]' 카테고리의 다른 글
[Linux] 리눅스 gcc란? gcc로 C언어 컴파일하기 (0) | 2023.09.23 |
---|---|
[Linux] 리눅스 tar, tar.gz 압축 및 압축 해제 하는 법, 리눅스 tar 명령어 사용법 (0) | 2023.09.14 |
[Linux] 리눅스 man 명령어 사용법, 리눅스 매뉴얼 확인하는 법 (0) | 2023.09.07 |
[Linux] 심볼릭 링크(symbolic link)란? 심볼릭 링크 만들기, 삭제, 변경 (0) | 2023.09.05 |
[Linux] 리눅스 date 명령어 사용법, 리눅스 시스템 시간 확인 하는 법 (0) | 2023.08.31 |