SW/리눅스

Linux : Touch 명령어 사용 방법, 예제

얇은생각 2021. 3. 3. 07:30
반응형

터치 명령을 사용하면 기존 파일 및 디렉터리의 타임스탬프를 업데이트할 수 있을 뿐 아니라 비어 있는 새 파일을 만들 수 있습니다.

이 가이드에서는 가장 일반적인 명령 옵션에 대한 실제 예와 자세한 설명을 통해 터치 명령을 사용하는 방법을 보여 줍니다. 

 

 

Linux : Touch 명령어 사용 방법, 예제

 

 

Linux 파일 타임스탬프

터치 명령 사용 방법에 대해 살펴보기 전에 먼저 Linux의 파일 타임스탬프를 검토하겠습니다.

 

Linux의 파일에는 세 개의 타임스탬프가 있습니다.

 - atime (access time) - cat, vim 또는 grep과 같은 일부 명령 또는 응용 프로그램에서 마지막으로 파일에 액세스/열린 시간입니다.

- mtime(modify time) - 파일의 내용이 마지막으로 수정된 시간입니다.

- ctime(change time) - 파일의 특성 또는 콘텐츠가 마지막으로 변경된 시간입니다. 속성은 파일 권한, 파일 소유권 또는 파일 위치를 포함합니다.

 

타임스탬프를 포함한 파일 상태를 표시하려면 stat 명령을 사용합니다.

stat file_name

 

 

새 파일을 만들려면 상위 디렉터리에 대한 쓰기 권한이 필요합니다. 그렇지 않으면 사용 권한 거부 오류가 표시됩니다.

 

 

 

터치 명령 사용 방법

옵션 없이 사용할 때 가장 간단한 양식에서 인수로 지정된 파일 이름이 존재하지 않는 경우 누르면 새 파일이 만들어집니다. 

파일이 이미 있으면 마지막 액세스 및 수정 시간을 현재 시간으로 변경합니다.

예를 들어 file1 파일이 없는 경우 다음 명령으로 생성되지 않고 타임스탬프가 변경됩니다.

touch file1

 

 

여러 파일을 동시에 만들거나 수정하려면 파일 이름을 인수로 지정하십시오.

touch file1 file2 file3

 

 

터치 명령으로 새 파일을 만들지 않으려면 -c(--no-create) 옵션을 사용합니다.

예를 들어 file1이 있는 경우 다음 명령은 파일 타임스탬프를 변경하지 않고 아무 작업도 수행하지 않습니다.

touch -c file1

 

 

 

액세스 또는 수정 시간만 변경

기본적으로 옵션을 사용하지 않으면 마지막 액세스 및 수정 시간을 현재 시간으로 업데이트합니다. -a 및 -m 옵션을 사용하여 이러한 타임스탬프 중 하나만 변경할 수 있습니다.

 

 

 

액세스 시간만 변경

-a 옵션을 사용하여 파일의 액세스 시간만 변경합니다.

touch -a file1

 

 

 

수정 시간만 변경

-m 옵션을 사용하여 파일의 수정 시간을 변경합니다.

수정 시간을 변경하면 변경 시간도 업데이트됩니다.

touch -m file1

 

 

 

특정 타임스탬프 설정

터치 명령을 사용하면 현재 시간이 아닌 특정 시간으로 파일을 업데이트하거나 만들 수도 있습니다.

-d(--date =) 옵션을 사용하여 날짜 문자열을 지정하고 현재 시간 대신 사용합니다.

예를 들어 file1의 마지막 액세스 및 수정 시간을 2018년 6월 1일 11:02로 변경하려면 다음 명령을 사용합니다.

touch -d '1 June 2018 11:02' file1

 

 

날짜 문자열은 작은 따옴표로 묶어야 합니다.

터치 명령에 부분 날짜/시간 문자열을 제공할 수도 있습니다. 날짜만 제공하면 연도가 자동으로 현재 연도로 변경됩니다.

touch -d '12 June' file1

 

 

-t 옵션을 사용하여 타임스탬프를 지정하고 현재 시간 대신 사용합니다. 타임스탬프 인수는 다음 형식이어야 합니다.

use [[CC]YY]MMDDhhmm[.ss]

 

 

예를 들어, 다음 명령은 파일 1의 마지막 액세스 및 수정 시간을 현재 연도의 6월 11:02로 설정합니다.

touch -t 06011102 file1

 

 

 

다른 파일의 타임스탬프 사용

-r(--reference =) 옵션을 사용하면 참조 파일을 지정하고 현재 시간 대신 해당 타임스탬프를 사용할 수 있습니다.

예를 들어, 다음 명령은 touch에 file2에 file1의 시간을 사용하도록 지시합니다.

touch -r file1 file2

 

 

 

심볼 링크 타임스탬프를 변경

기본적으로 심볼릭 링크에서 터치 명령을 사용하면 참조된 파일의 타임스탬프가 변경됩니다.

-h(--no-reference)를 사용하여 symlink의 타임스탬프를 수정합니다.

예를 들어 심볼 링크 symlink1의 타임스탬프를 변경하려면 다음을 사용합니다.

touch -h symlink1

 

반응형