tail head cat sleep
QR code linking to this page

Man page  — CP

명칭

cp – 파일을 카피한다

내용

서식


cp [ -R [-H | -L | -P] ] [-f | -i | -n] [-pv] source_file target_file

cp [ -R [-H | -L | -P] ] [-f | -i | -n] [-pv] source_file ... target_directory

해설

1 번째의 서식의 경우, cpsource_file 의 내용을 target_file 에 카피합니다. 2 번째의 서식의 경우, source_file 의 각각이 target_directory 의 안에 카피됩니다. 이 때 이름은 변경되지 않습니다. 카피처가 원래의 파일 자신이 되는 것 같은 지정을 cp 하지만 검출했을 경우, 카피는 실패합니다.

이하의 옵션을 사용할 수 있습니다.
-H
  -R 옵션이 지정되어 있을 때, 명령행으로 지정된 기호 연결 (을)를 추적합니다. (나무 구조의 검색중에 발견된 기호 연결은 추적 하지 않습니다)
-L
  -R 옵션이 지정되어 있을 때, 모든 기호 연결을 추적합니다.
-P
  -R 옵션이 지정되어 있을 때, 기호 연결을 일절 추적하지 않습니다. 이것이 디폴트입니다.
-R
  source_file (으)로서 디렉토리가 지정되었을 경우, cp (은)는 그 디렉토리와 그것 이하의 부분목을 구성하는 모든 파일을 카피합니다. 기호 연결에 대해서, 그것이 가리키고 있는 앞의 파일을 카피하는 것이 아니라 기호 연결인 채 카피합니다. 특수 파일에 대해서도 통상 파일로서가 아니고 cp 하지만 특수 파일을 생성하는 것으로 카피합니다. 작성되는 디렉토리의 속성은 프로세스의 umask 치의 영향을 받지 않고, 대응하는 카피원디렉토리와 같은 속성이 됩니다.

하드 링크 된 파일에 대해서는, cp 하지만 다른 파일로서 카피하는 것에 주의해 주세요. 하드 링크를 유지하기 위해서(때문에)는, 대신에 tar(1), cpio(1), pax(1) (을)를 사용해 주세요.

-f
  카피 먼저 벌써 동명의 파일이 존재하는 경우, 그 파일의 파 미션에 관련되지 않고, 확인을 요구하지 않고 그것을 소거해 새롭고 파일 (을)를 작성합니다. ( -f 옵션보다 전의 -i 또는 -n 옵션은 무시됩니다. )
-i
  벌써 존재하는 파일에의 덧쓰기를 수반하는 카피를 실행하기 전에, 덧쓰기하는지 어떤지의 확인 prompt를 표준 에러 출력에 출력하는 듯 cp 에 지시합니다. 표준 입력으로부터의 대답이 캐릭터 'y' 인가 'Y' 그리고 시작되어 있으면 카피가 실행됩니다. ( -i 옵션보다 전의 -f 또는 -n 옵션은 무시됩니다. )
-n
  기존의 파일을 덧쓰기하지 않습니다. ( -n 옵션보다 전의 -f 또는 -i 옵션은 무시됩니다. )
-p
  파일의 변경 시각·액세스 시각·플래그·모드·유저 ID·그룹 ID 등을, 퍼미션이 허락하는 범위내에서 가능한 한 보존해 카피하는 듯 cp 에 지시합니다.

유저 ID 나 그룹 ID 를 보존할 수 없는 경우에서도, 에러 메세지는 출력되지 않고 반환값도 변화하지 않습니다.

카피원파일에 SETUID 비트가 서 있고 한편 그 유저 ID 를 보존할 수 없다 경우, SETUID 비트는 보존되지 않습니다. 카피원파일에 SETGID 비트가 서 있고 한편 그 그룹 ID를 보존할 수 없는 경우, SETGID 비트는 보존되지 않습니다. 카피원의 파일에 SETUID 비트와 SETGID 비트가 모두 서 있고 한편 그 유저 ID 나 그룹 ID 의 어느쪽이든 한편에서도 보존할 수 없는 경우, -p 옵션이 지정되어 있지 않은 한, SETUID 비트와 SETGID 비트의 양쪽 모두가 보존되지 않습니다.

-v
  cp (을)를 장황하게 해, 카피할 때 파일을 표시시킵니다.

벌써 존재하는 카피처 파일에 대해서는, 퍼미션이 허락하면 내용은 덧쓰기됩니다만, 모드·유저 ID·그룹 ID 는 변화하지 않습니다.

2 번째의 서식에서는, source_file (으)로서 디렉토리가 하나만 지정되고 한편 -R 옵션이 지정되어 있는 경우를 제외해, target_directory (은)는 존재하고 있지 않으면 안됩니다.

카피처 파일이 존재하지 않는 경우, 카피원파일의 모드에 파일 모드 생성 마스크 ( umask, csh(1) [영어] 을 참조) (을)를 적용한 것이 카피처 파일의 모드로서 사용됩니다. 카피원파일의 SETUID 비트가 서 있어도, 카피원파일과 카피처 파일의 소유자가 동일하지 않은 한, 그것은 떨어뜨려집니다. 카피원파일의 SETGID 비트가 서 있어도, 카피원파일과 카피처 파일이 동일 그룹에 속 밖에 개카피를 실시하는 유저가 그 그룹 에 들어가 있지 않은 한 그것은 떨어뜨려집니다. SETUID 비트와 SETGID 비트의 양쪽 모두가 서 있는 경우, 상기의 모든 조건이 채워지지 않은 한, 양쪽 모두의 비트가 떨어뜨려집니다.

파일의 생성 및 덧쓰기에는, 적절한 퍼미션이 없으면 안됩니다.

-R 플래그가 지정되면(자) 기호 연결은 추적됩니다만, 그렇지 않은 한 디폴트로 기호 연결은 항상 추적됩니다. -H 또는 -L 플래그 ( -R 플래그와 병용)을 이용하면(자), 기호 연결의 추적을 전술한 것처럼 동작함 다툴 수가 있습니다. -H, -L, -P 옵션은, -R 옵션이 지정되어 있지 않으면 무시됩니다. 또, 이러한 옵션은 서로 지워, 마지막에 지정된 것이 유효하게 됩니다.

진단

The utility exits 0 on success, and >0 if an error occurs.

호환성

종래판의 cp 에는 -r 옵션이 있었습니다. 본실장에서도 이 옵션은 서포트되고 있습니다만, 특수 파일·기호 연결·FIFO 등을 올바르게 카피할 수 없기 때문에, 이것을 사용하는 것은 추천할 수 없습니다.

-v-n (은)는 표준이 아니고, 스크립트중에서의 사용은 추천하지 않습니다.

관련 항목

mv(1), rcp(1), umask(2), fts(3), symlink(7)

표준

cp 명령은, IEEE Std 1003.2 ("POSIX.2") 호환을 상정하고 있습니다.

역사

cp 명령은 AT&T v1 (으)로부터 등장했습니다.

CP (1) August 10, 2002

tail head cat sleep
QR code linking to this page


Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.

A typical Unix /bin or /usr/bin directory contains a hundred different kinds of programs, written by dozens of egotistical programmers, each with its own syntax, operating paradigm, rules of use ... strategies for specifying options, and different sets of constraints.
— The Unix Haters' handbook