scp
똑똑하지는 않습니다. 동일한 원격 호스트의 파일 인 여러 명령 줄 인수를 지정하면 각 인수에 대해 새 연결이 열립니다.
rsync
대신 사용할 수 있습니다. scp
이 방법과 다른 방법으로 더 똑똑합니다.
rsync -r -e 'ssh -P PORT' user@host:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/
다른 방법은 여러 파일을 설명 하는 단일 인수scp
를 전달하는 것 입니다.
다른 방법은 항상 인증 할 필요가 없도록 시스템을 설정하는 것입니다. 키 인증을 설정하는 것이 바람직하며 , 이는 대부분의 시나리오에서보다 편리하고 안전합니다. 대안으로 또는 추가로 연결 공유를 설정하여 세션 당 한 번만 인증하면됩니다. 어쨌든 매번 사용자 이름과 포트를 지정할 필요가 없도록 별칭을 설정하십시오. 당신의 ~/.ssh/config
:
ControlMaster auto
ControlPath ~/.ssh/control:%h:%p:%r
Host nick
HostName real-host-name.example.com
User bob
Port 1234
실행 ssh -Nf nick
하여 연결을 연 다음 모든 후속 연결 nick
이 기존 연결에서 피기 백됩니다. 이제 당신은 그냥 실행할 수 있습니다
scp -r nick:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/