본문 바로가기

리눅스/명령어

리눅스 - touch (파일생성, 갱신)

728x90

1. 아무것도 없는 빈 파일을 생성

2. 파일의 날짜와 시간을 수정

-> 파일명이 이미 존재하면다면 서버의 현재시간으로 파일의 최근 사용한 시간과 최근 변경시간을 변경

-> 파일명이 존재하지 않는다면 파일의 크기가 0인 빈 파일을 생성

 

touch [옵션][파일명]

-파일이 없다면 file txt 파일 생성, 있다면 file.txt의 시간 정보 수정

touch file.txt

 

여러 파일의 생성 시간을 수정하고 싶을 때

touch [생성 or 수정 대상1] [생성 or 수정 대상2] [생성 or 수정 대상3] .....

touch test1.txt test2.txt test3.txt

 

현재 위치의 모든 파일 수정

touch *

 

현재 위치의 .sh로 끝나는 모든 파일 수정

touch *.sh

 

하위 폴더 모두 touch 하고 싶을 때

- 하위 폴더 모두 touch

find . -exec touch {} \;

또는

find . -print | xargs touch

 

- 하위 폴더의 sh만 전부 touch

find . -name '*.sh' -exec touch {} \;

 

※주의 사항

- 수정 할 파일이 존재하지 않는다면 크기가 0 인 빈 파일을 생성

- 수정 할 파일이 존재한다면 해당 파일의 최근 사용한시간과 최근 변경 시간을 현재 시간으로 수정

- 별다른 옵션이 없다면 atime, ctime, mtime 모두 변경됩니다.

리눅스 타임 스탬프 종류
atime : 최종 접근 시간 (access time)
ctime : 최종 상태 변경 시간 (change time)
mtime : 최종 수정 시간 (modify time)

 

자주 사용하는 옵션

  • -a : 현 시간으로 파일의 접근 시간, 변경 시간을 수정한다.
  • -c : 기존 파일이 없으면 파일이 생성되지 않는다.
  • -m : 현재 시간으로 파일의 수정 시간, 변경 시간을 수정한다.
  • -d : 지정한 시간으로 접근 시간, 수정 시간이 변경되고 변경시간은 현재 시간으로 수정된다.
  • -r : 지정한 파일의 접근 시간, 수정 시간으로 파일이 수정되고 변경 시간은 현재 시간으로 수정된다.
  • -t : 지정한 시간으로 접근 시간, 수정 시간을 수정하고 변경 시간은 현재 시간으로 수정한다.

 

반응형