touch 명령

용도

파일의 액세스 권한 및 수정 시간을 갱신합니다.

구문

touch [ -a ] [ -c ] [ -m ] [ -f ] [ -r RefFile ] [ 시간 | -t 시간 | -d date_time] { 파일 ... | 디렉토리 ...}
참고: 앞의 구문은 AIX® 운영 체제에서 UNIX03 모드가 활성화되지 않은 경우에만 적용됩니다.

touch [-a c m f] [-r ref_file | -t time | -d date_time ] file... | Directory

주: 위의 구문은 UNIX03 모드가 사용 가능한 경우에만 적용 가능합니다. AIX 운영 체제에서 UNIX03 모드를 사용하려면 XPG_SUS_ENV 환경 변수의 값을 ON으로 설정해야 합니다.

설명

touch 명령은 Directory 매개변수로 지정된 각 디렉토리의 File 매개변수가 지정한 각 파일의 액세스 및 수정 시간을 갱신합니다. Time 변수의 값을 지정하지 않은 경우 touch 명령은 현재 시간을 사용합니다. 존재하지 않는 파일을 지정하는 경우, -c 플래그를 지정하지 않으면 touch 명령이 파일을 작성합니다.

touch 명령의 리턴 코드는 시간을 수정할 수 없는 파일의 수입니다(존재하지 않고 작성되지 않는 파일 포함).

-a-m 플래그는 touch 명령에서 이를 지정하지 않더라도 활성입니다.

플래그

항목 설명
-a File 변수로 지정된 파일의 액세스 시간을 변경합니다. 수정 시간을 변경하려면 -m도 같이 지정하십시오.
-c 아직 존재하지 않는다면 파일을 작성하지 마십시오. 이 조건에 대한 진단 메시지가 기록되지 않습니다.
-d 날짜 시간 현재 시간 대신 지정된 날짜 및 시간을 사용합니다. date_time 변수는 YYYY-MM-DDThh:mm:SS[.frac][tz] 또는 YYYY-MM-DDThh:mm:SS[,frac][tz]와 같은 10진수 형식으로 지정됩니다. 여기서 각 값은 다음과 같습니다.
YYYY
4자리 수로 연도를 지정합니다(0000 - 9999).
MM
연도의 월을 지정합니다(01 ~ 12).
DD
월의 일을 지정합니다(01 ~ 31).
hh
일의 시간을 지정합니다(00 ~ 23).
mm
분(00 - 59)을 지정합니다.
SS
분의 초를 지정합니다(00 ~ 59).
T
시간 지정자를 나타내며 단일 공백으로 교체할 수 있습니다.
[.frac]
단편 초를 지정합니다. 공백 또는 구두점(.) 중 하나에 하나 이상의 10진수를 사용할 수 있습니다.
[, frac]
단편 초를 지정합니다. 쉼표(,)에 하나 이상의 10진수가 사용됩니다.
[tz]
[tz] 매개변수의 값이 공백인 경우, 로컬 표준 시간대가 결과 시간에 사용됩니다. [tz] 매개변수의 값이 문자 Z인 경우, UTC(Coordinate Time Zone)가 결과 시간에 사용됩니다. [tz] 매개변수의 값이 공백인 경우, TimezoneInfo(TZ) 환경 변수의 값은 결과 시간을 식별하는 데 사용됩니다. [tz] 매개변수의 값은 결과 시간이 Epoch 시간 이전인 경우 구현별로 다릅니다. 또한 결과 시간이 File 매개변수에서 지정된 파일의 시간소인으로 표시될 수 없는 경우, touch 명령이 오류 상태로 종료됩니다.
-f 파일의 읽기 및 쓰기 권한에도 불구하고 강제로 접촉(touch)을 시도합니다.
-m File의 수정 시간을 변경합니다. 수정 시간을 변경하려면 -a 플래그를 같이 지정하십시오.
-r RefFile 현재 시간 대신에 RefFile 변수로 지정된 파일의 해당하는 시간을 사용합니다.
time MMDDhhmm[YY] 형식으로 새로운 시간 소인의 날짜 및 시간을 지정합니다.
MM
연도의 월을 지정합니다(01 ~ 12).
DD
월의 일을 지정합니다(01 ~ 31).
hh
일의 시간을 지정합니다(00 ~ 23).
mm
분(00 - 59)을 지정합니다.
YY
연도의 마지막 두 자리를 지정합니다. YY 변수가 지정되지 않은 경우 디폴트 값은 현재 연도(70부터 99 또는 00부터 37)입니다.

YY 숫자의 값이 70과 99 사이이면 세기는 19로 가정됩니다.

YY 숫자의 값이 00과 37 사이이면 세기는 20으로 가정됩니다.

-t 시간 현재 시간 대신에 지정된 시간을 사용합니다. Time 변수는 10진수 양식[[CC]YY]MMDDhhmm[.SS]으로 지정됩니다. 여기서,
CC
연도의 처음 두 자릿수(19부터 21)를 지정합니다.
YY
연도의 마지막 두 자릿수(00부터 99)를 지정합니다.

YY 숫자의 값이 70과 99사이일 경우, CC 숫자의 값은 19로 가정됩니다.

YY 숫자의 값이 00에서 37사이일 경우, CC 숫자의 값은 20으로 가정됩니다.

2038이후의 연도는 연도를 yyyy 형식으로 지정하십시오.

MM
연도의 월을 지정합니다(01 ~ 12).
DD
월의 일을 지정합니다(01 ~ 31).
hh
일의 시간을 지정합니다(00 ~ 23).
mm
분(00 - 59)을 지정합니다.
SS
분의 초를 지정합니다(00 ~ 59).
   
참고:
  1. touch 명령은 utimenstat () 서브루틴을 호출하여 접촉된 파일의 수정 및 액세스 시간을 변경합니다. 이로 인해 파일에 쓰기 권한이 있더라도 실제로 파일을 소유하지 않는 경우, 플래그가 사용되면 touch 명령에 실패하게 될 수도 있습니다.
  2. touch 명령을 사용할 때 오류 메시지를 수신했다면, 전체 경로 이름을 /usr/bin/touch로 지정하지 마십시오.

종료 상태

이 명령은 다음과 같은 종료값을 리턴합니다.

항목 설명
0 명령이 정상적으로 실행되었습니다. 요청된 모든 변경이 완료되었습니다.
> 0 오류가 발생했습니다.

보안

hm

RBAC 사용자 및 신뢰할 수 있는 AIX 사용자 주의: 이 명령은 권한 있는 작업을 수행할 수 있습니다. 특권 사용자만 특권 조작을 실행할 수 있습니다. 권한 부여 및 권한에 대한 자세한 내용은 보안의 권한 있는 명령 데이터베이스를 참조하세요. 이 명령과 연관된 특권 및 권한 부여 리스트는 lssecattr 명령 또는 getcmdattr 부속 명령을 참조하십시오.

  1. 파일의 액세스 및 수정 시간을 갱신하려면 다음과 같이 입력하십시오.
    touch program.c
    마지막 액세스 및 수정 시간을 설정합니다.program.c파일을 현재 날짜 및 시간으로 변경하십시오. If theprogram.ctouch 명령은 해당 이름의 빈 파일을 작성합니다.
  2. 새 파일을 작성하지 않으려면 다음과 같이 입력하십시오.
    touch  -c program.c
  3. 수정 시간만을 갱신하려면 다음과 같이 입력하십시오.
    touch  -m *.o
    이는 다음으로 끝나는 파일의 마지막 수정 시간 (액세스 시간이 아님) 을 업데이트합니다..o현재 디렉토리의 확장자입니다. 이런 식으로 touch 명령을 사용하여 make 명령의 결과를 변경하는 데 종종 사용됩니다.
  4. 액세스 및 수정 시간을 명시적으로 설정하려면 다음과 같이 입력하십시오.
    touch  -c  -t 02171425 program.c
    이는 액세스 및 수정 날짜를 14시 25분(오후 2시 25분)으로 설정합니다. 올해의 2월 17일.
  5. 현재 시간 대신에 다른 파일의 시간 소인을 사용하려면 다음과 같이 입력하십시오.
    touch  -r file1 program.c
    이는program.c동일한 시간소인을file1파일로 내보내집니다.
  6. 현재 시간 이외에 설정된 시간을 사용하여 파일을 접촉하려면 다음과 같이 입력하십시오.
    touch  -t 198503030303.55 program.c
    이는program.c3:03:55 a.m의 시간소인을 보관하십시오. 1985년 3월 3일.

파일

항목 설명
/usr/bin/touch touch 명령을 포함합니다.