Categories
Linux

scp 명령으로 네트워크 상에서 파일 및 디렉토리 복사하기

scp 명령의 형식을 보자.

scp [옵션] [[사용자이름@]호스트이름:]원본파일경로 [[사용자이름@]호스트이름:]사본파일경로

대괄호 안에 있는 부분은 생략 가능하다.

다음은 원격 컴퓨터로부터 로컬 컴퓨터로 파일 하나를 복사하는 명령이다.

scp username@hostname.com:sample.txt .

username은 원격 컴퓨터의 사용자이름이고 hostname.com은 원격 컴퓨터의 호스트이름이다. 여기서는 경로를 지정하지 않고 sample.txt라는 파일 이름만 지정했다. 이처럼 경로가 생략되면 접속한 사용자의 홈디렉토리가 경로가 된다. 명령의 맨 끝에 있는 ‘.’은 이 명령을 수행한 컴퓨터의 현재 디렉토리를 의미한다.

사본 파일이 저장될 경로를 지정할 수도 있다.

scp username@hostname.com:sample.txt /xtmci/tmp

scp 명령을 내리면 암호를 입력하는 프롬프트가 출력된다. 암호를 입력하면 파일 전송이 시작된다.

다음은 로컬 컴퓨터로부터 원격 컴퓨터로 파일 하나를 복사하는 명령이다.

scp index.html root@hostname.com:/home/username/html

index.html 파일이 복사할 파일이다. 이 파일은 로컬 컴퓨터의 현재 디렉토리에 있다. 이 파일은 원격 컴퓨터의 /home/username/html 디렉토리로 복사될 것이다.

파일 이름을 바꾸어 복사할 수도 있다.

scp index.html root@hostname.com:/home/username/html/index-2.html

이렇게 하면 파일의 이름이 index-2.html 로 바뀌어 복사된다.

scp 명령에서 자주 사용되는 옵션은 -P 옵션과 -r 옵션이다.

SSH 포트 번호의 디폴트 값은 22번이다. SSH 포트 번호가 22번이 아닐 때 -P 옵션을 사용한다.

scp -P 2424 username@hostname.com:sample.txt /xtmci/tmp

-r 옵션은 디렉토리를 복사할 때 사용한다.

scp -r /xtmci/backup root@hostname.com:/home

이 명령은 로컬 컴퓨터의 /xtmci/backup 디렉토리를 원격 컴퓨터의 /home 디렉토리 밑에 복사한다.

Leave a Reply

Your email address will not be published. Required fields are marked *