파일을 지정된 경로에 복사하는 명령어
cp는 파일을 또 하나의 파일이나, 다른 디렉토리로 복사하는 명령어이다. 복사를 할경우, 대상파일이 있을 경우, 사용자에게 물어보지 않고 바로 복사한다. 만일 이 복사가 잘못된 경우, 이전의 정보 위에 다른 내용이 덧씌워진 파일을 복구하는 것은 거의 불가능하다. 이 같은 실수를 방지하기 위해, alias 설정으로 -i 옵션을 설정하였다.
아래는 아파치 설정파일과 네임서버 설정 파일을 홈 디렉토리에 복사한다.
-R 옵션은 웹 서버 기본 디렉토리인 /var/www/html 와 모든 하위 디렉토리와 파일을 /backup 디렉토리로 복사한다.
사용법 : cp [옵션] 원본파일 복사파일, cp [옵션] 파일 ... 디렉토리 -a, --archive : 원본 파일의 속성, 링크 정보들을 그대로 유지하면서 복사한다. 이 옵션은 -dpR 옵션과 같은 역할을 한다. -b, --backup : 복사대상 파일이 있을 경우를 대비해, 백업파일을 만든다. -d, --no-deference : 원본파일이 소프트링크 파일이면, 소프트링크 원본을 복사한다. -f, --force : 복사대상 파일이 있을 경우, 복사대상 파일을 강제로 지우고 복사한다. -i, --interactive : 복사대상 파일이 있을 경우, 사용자에게 복사에 대한 여부를 물어본다. -l, --link : 심볼릭 링크 형식으로 복사한다. 물론 하드 링크형식이기에 경로는 복사할 수 없다. -P, --parents : 원본 파일에 지정을 경로와 같이 했을 경우, 그 경로 그대로 복사한다. -p, --preserver : 원본 파일의 소유자, 그룹, 권한, 시간정보들이 그대로 보존하여 복사한다. -r : 일반 파일이면 그냥 복사하고, 만약 원본이 경로면 그 경로와 함께 경로 안에 있는 모든 하위경로, 파일들이 복사된다. -s, --symbolic-link : 경로가 아닌 일반 파일을 심볼릭 링크 형식으로 복사한다. -u, --update : 복사할 대상이 이미 있는데 이 파일의 변경 날짜가 같거나 더 최근의 것이면 복사하지 않는다. -v, --verbose : 복사 상태를 자세하게 보여준다. -x, --one-file-system : 원본과 대상 파일의 파일 시스템이 다를 경우에는 복사 하지 않는다. -R, --recursive : 디렉토리를 복사할 경우 하위 디렉토리와 파일을 모두 복사한다. --help : 도움말을 보여준다. --version : 버전정보를 보여준다.
cp는 파일을 또 하나의 파일이나, 다른 디렉토리로 복사하는 명령어이다. 복사를 할경우, 대상파일이 있을 경우, 사용자에게 물어보지 않고 바로 복사한다. 만일 이 복사가 잘못된 경우, 이전의 정보 위에 다른 내용이 덧씌워진 파일을 복구하는 것은 거의 불가능하다. 이 같은 실수를 방지하기 위해, alias 설정으로 -i 옵션을 설정하였다.
# alias | grep cp alias cp='cp -i'
아래는 아파치 설정파일과 네임서버 설정 파일을 홈 디렉토리에 복사한다.
# cp /etc/httpd.conf /etc/named.conf ~
-R 옵션은 웹 서버 기본 디렉토리인 /var/www/html 와 모든 하위 디렉토리와 파일을 /backup 디렉토리로 복사한다.
# cp -R /var/www/html/backup