Yehyun Suh

[우분투] 원격 서버에 올라가있는 파일 로컬로 옮겨오기 본문

오류 해결/우분투

[우분투] 원격 서버에 올라가있는 파일 로컬로 옮겨오기

Yehyun Suh 2023. 11. 16. 02:29

가끔 작업을 하다보면 원격 서버에 올린 파일을 로컬에 다운 받아서 작업을 해야하는 경우가 있다. 이런 경우에는 터미널에서 어떤 명령어를 쳐야 파일을 다운 받을 수 있을까?

1. 파일 하나만 다운 받기

scp username@remote_server_ip:/path/to/remote/file /path/on/local/machine

예를 들어 내 계정의 이름이 yehyun이고 remote server의 ip가 1.2.3.4, 서버에 올라간 데이터의 경로가 ~/Desktop/yehyun_server/1.png, 로컬에 받고 싶은 경로가 ~/Desktop/yehyun_local 이라면,

scp yehyun@1.2.3.4:~/Desktop/yehyun_server/1.png ~/Desktop/yehyun_local

와 같이 적을 수 있다.

2. 폴더 전체를 다운 받기

폴더 전체를 다운 받기 위해서는 recursive 옵션을 명령어에 추가를 하면 된다.

scp -r username@remote_server_ip:/path/to/remote/directory /path/on/local/machine

위와 동일한 조건에서 이번에는 1.png만 다운받고 싶은 것이 아니라 ~/Desktop/yehyun_server 폴더 자체를 다운 받고 싶다면,

scp -r yehyun@1.2.3.4:~/Desktop/yehyun_server ~/Desktop/yehyun_local

와 같이 적으면 된다. 다만 이렇게 되면 yehyun_server 라는 폴더가 yehyun_local 안에 들어가게 되는데, 그냥 yehyun_server 라는 폴더가 ~/Desktop에 옮겨오도록 하고 싶으면,

scp -r yehyun@1.2.3.4:~/Desktop/yehyun_server ~/Desktop

yehyun_local을 제거해주면 된다.

3. 명령어 실행

코드를 실행시키면 위와 같이 파일의 현재 다운로드 진행 현황을 보여주는 창이 나오고, 다운로드가 잘 되는 것을 확인할 수 있다.