Linux/Basic
scp - 파일 또는 폴더를 업로드/다운로드 합니다.
Tongchun
2019. 4. 26. 11:48
간혹 Mac에서 서버(Linux)로 파일이나 디렉토리 전체를 업로드해야 할 때가 있습니다.
그럴때 scp (secure copy)를 사용합니다.
ssh로 연결해 key 파일을 가자고 있다면 사용할 수 있습니다. scp는 ssh를 사용해 파일을 전달하게 됩니다.
기본적인 scp명령은 아래와 같습니다.
scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
간단하게 내 파일을 remote server에 전달할 때는 아래와 같습니다.
로컬 PC(Mac)에 있는 ngle.txt라는 파일을 10.10.0.56인 서버에 tongchun 계정으로 /home/tongchun/words/ 안으로 복사(업로드)합니다.
$ scp ngle.txt tongchun@10.10.0.56:/home/tongchun/words/
디렉토리 전체를 업로드할 경우에는 -r 옵션을 사용합니다.
현재 위치에 있는 ngle이라는 폴더를 10.10.0.56 서버에 tongchun 계정으로 /home/tongchun 안으로 업로드 합니다.
$ scp -r ./ngle tongchun@10.10.0.56:/home/tongchun
remote server에서 파일이나 디렉토리를 다운받고 싶다면 위치를 반대로 해주면 됩니다.
10.10.0.56 서버에서 /home/tongchun/ngle.txt 파일을 현재 위치에 다운로드 받고 싶다면 아래와 같이 사용합니다.
$ scp tongchun@10.10.0.56:/home/tongchun/ngle.txt ./
remote server A에서 remote server B로 파일이나 디랙토리를 이동시킬 수도 있습니다.
10.10.0.56에 있는 APIServer.go 파일을 10.10.0.118로 이동시킵니다.
$ scp tongchun@10.10.0.56:/home/tongchun/APIServer.go ngle@10.10.0.118:/home/ngle
자주 사용하는 scp 명령 형식만 확인해 봤으며 더 자세한 사항은 구글에서 찾으면 많이 나옵니다.