scp çok akıllı değil: aynı uzak ana bilgisayardaki dosyalar olan birden fazla komut satırı bağımsız değişkeni verildiğinde, her bağımsız değişken için yeni bir bağlantı açar.
Bunun rsyncyerine kullanabilirsiniz scp, bu şekilde daha akıllıdır (ve başka şekillerde).
rsync -r -e 'ssh -P PORT' user@host:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/
Başka bir yaklaşım, birden fazla dosyayı tanımlayan tek bir argüman scpiletmektir .
Farklı bir yaklaşım, sisteminizi her zaman kimlik doğrulaması yapmak zorunda kalmayacak şekilde ayarlamaktır. Tercihen, çoğu senaryoda hem daha rahat hem de daha güvenli olan anahtar kimlik doğrulamasını ayarlayın . Alternatif olarak veya ek olarak, oturum başına yalnızca bir kez kimlik doğrulaması yapmanız için bağlantı paylaşımını ayarlayın . Her durumda, her zaman kullanıcı adını ve bağlantı noktasını belirtmenize gerek kalmayacak şekilde bir takma ad oluşturun. Sizin ~/.ssh/config:
ControlMaster auto
ControlPath ~/.ssh/control:%h:%p:%r
Host nick
HostName real-host-name.example.com
User bob
Port 1234
ssh -Nf nickBir bağlantı açmak için çalıştırın ve daha sonra yapılacak tüm bağlantılar nickmevcut bağlantıda geri dönecektir. Şimdi sadece koşabilirsin
scp -r nick:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/