[리눅스] cp 명령어

cp 명령

cp (OPTION)... (-T) SOURCE DEST
  • -a, –archive : 원본 파일의 구조와 속성을 최대한 가깝게 복사합니다.
  • -b : 복사하는 동안 덮어쓸 파일의 백업 복사본을 만듭니다.
  • -d : 심볼릭 링크를 심볼릭 링크로 복사합니다. 그리고 원본 파일과 긴밀한 링크 관계를 유지합니다.
  • -f, –force: 복사하기 전에 복사 위치에 있는 파일을 제거합니다.
  • -i, –interactive : 복사 시 같은 이름의 파일이 존재하는 경우 덮어쓰기 여부를 확인한다.
  • -I, –link: 하드 링크를 생성합니다.
  • -P, –no-dereference : 원본 파일의 소유자, 그룹, 권한 및 타임스탬프를 변경하지 않고 복사합니다.
  • -R, -r, –recursive: 모든 파일과 하위 디렉터리를 복사합니다.
  • -s, –symbolic-link : 비디렉토리 파일에 대한 심볼릭 링크를 만듭니다. 소스 파일 이름은 전체 경로 이름이어야 합니다. 대상 파일 이름은 전체 경로가 지정되지 않은 경우에도 현재 디렉터리로 간주되므로 관련이 없습니다.
  • -u, –update : 새로 수정된 파일만 복사(업데이트)
  • -x, –one-file-system : 다른 파일 시스템인 하위 디렉토리를 무시합니다.

백업할 때 cp -aR

cp 명령과 함께 사용할 때 덮어쓸지 여부를 묻습니다.

$ cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bk1
cp: overwrite ‘/etc/nginx/nginx.conf.bk1’? y

force 옵션이 cp 명령에 추가되었지만 무시할 것인지 묻는 메시지가 표시됩니다.

$ cp -f /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bk1
cp: overwrite ‘/etc/nginx/nginx.conf.bk1’? y

아래와 같이 사용하시면 묻지 않아도 바로 복사가 가능합니다.
예 | cp -f 소스 대상

$ yes | cp -f /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bk1
cp: overwrite ‘/etc/nginx/nginx.conf.bk1’? $

\cp -f 소스 대상

$ \cp -f /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bk1