English

cp — 리눅스 기본 명령어

Linux / 리눅스 기본 명령어 / cp.html

리눅스 기본 명령어원문등록 2026-10-19T09:00:00+09:00

파일이나 디렉토리를 복사하는 명령어.

기본 정보

명령어 이름cp (copy)
한 줄 소개파일이나 디렉토리를 복사하는 명령어.
제공GNU coreutils (모든 Linux 배포판 기본 탑재)
공식 문서https://man7.org/linux/man-pages/man1/cp.1.html
지원 운영체제Linux, macOS, BSD, WSL
설치 여부기본 탑재 (별도 설치 불필요)
분류리눅스 기본 명령어 (태그: 파일 복사, 디렉토리, 리눅스, 기본)

이 명령어는 무엇인가?

cp는 copy의 약자로, 파일이나 디렉토리를 복사하는 명령어입니다. 원본은 그대로 남고 사본이 생성됩니다.

단일 파일 복사부터 디렉토리 전체 재귀 복사, 속성 유지, 덮어쓰기 방지 등 다양한 옵션을 제공합니다.

어떤 문제를 해결하는가?

  • 파일을 백업합니다.
  • 설정 파일을 복제해 수정합니다.
  • 디렉토리 전체를 다른 위치로 복사합니다.
  • 파일을 안전하게 덮어쓰지 않고 복사합니다.

주요 기능

단일 파일 복사

파일을 다른 이름이나 위치로 복사합니다.

  • 활용 상황: 파일 백업·복제가 필요할 때.
  • 얻는 결과: 원본과 동일한 사본이 생성됩니다.
  • 제한 사항: 대상 위치에 같은 이름 파일이 있으면 덮어씁니다.

디렉토리 재귀 복사 (-r)

디렉토리와 그 안의 모든 하위 항목을 함께 복사합니다.

  • 활용 상황: 프로젝트 폴더 전체를 복제할 때.
  • 얻는 결과: 하위 디렉토리·파일 구조가 그대로 복사됩니다.
  • 제한 사항: -r 없이 디렉토리를 복사하면 오류가 발생합니다.

속성 유지 (-p)

권한, 소유자, 수정 시각 등 속성을 그대로 유지합니다.

  • 활용 상황: 배포 스크립트에서 속성을 보존해야 할 때.
  • 얻는 결과: 복사본이 원본과 동일한 속성을 가집니다.
  • 제한 사항: 소유자 변경은 root 권한이 필요합니다.

덮어쓰기 방지 (-n)

대상에 같은 이름 파일이 있으면 건너뜁니다.

  • 활용 상황: 실수로 중요한 파일을 덮어쓰지 않으려 할 때.
  • 얻는 결과: 기존 파일이 보호됩니다.
  • 제한 사항: 건너뛴 파일은 알림이 없으므로 수동 확인이 필요합니다.

설치 및 실행

기본 탑재 확인

모든 Linux 배포판에 기본 포함되어 있습니다.

which cp
cp --version

별도 설치 (경량 환경)

일반적으로 이미 설치되어 있습니다.

sudo apt install coreutils   # Debian/Ubuntu
sudo dnf install coreutils     # Fedora

실제 사용 예제

기본 파일 복사

파일을 복사합니다.

# 파일 복사
cp report.txt report-backup.txt

# 다른 디렉토리로 복사
cp report.txt /var/backups/

# 여러 파일 한 번에 복사
cp file1.txt file2.txt /tmp/

디렉토리 재귀 복사

디렉토리 전체를 복사합니다.

# 디렉토리 전체 복사 (-r 옵션 필수)
cp -r project/ project-backup/

# 속성 유지하며 복사
cp -rp /etc/nginx/ /tmp/nginx-backup/

안전한 복사 (덮어쓰기 방지)

기존 파일을 보호하며 복사합니다.

# 같은 이름 파일이 있으면 건너뜀
cp -n config.txt /etc/app/

# 백업 타임스탬프 추가
cp config.txt config.txt.$(date +%Y%m%d).bak