Python'da bir dosyayı scp etmenin en pythonic yolu nedir? Fark ettiğim tek rota
os.system('scp "%s" "%s:%s"' % (localfile, remotehost, remotefile) )
ki bu bir hack'tir ve Linux benzeri sistemlerin dışında çalışmaz ve uzak ana bilgisayara önceden şifresiz SSH ayarlanmamışsa şifre istemlerinden kaçınmak için Pexpect modülünden yardıma ihtiyaç duyar.
Twisted'in farkındayım conch, ancak scp'yi düşük seviyeli ssh modülleriyle uygulamaktan kaçınmayı tercih ederim.
paramikoSSH ve SFTP'yi destekleyen bir Python modülü olduğunun farkındayım ; ancak SCP'yi desteklemez.
Arka plan: SFTP'yi desteklemeyen ancak SSH / SCP'yi destekleyen bir yönlendiriciye bağlanıyorum, bu nedenle SFTP bir seçenek değil.
EDIT : Bu bir dosyayı SCP veya SSH kullanarak Python uzak bir sunucuya kopyalamak nasıl? . Ancak , bu soru Python içindeki anahtarlarla ilgilenen scp'ye özel bir cevap vermez. Ben kod tür çalıştırmak için bir yol umuyorum
import scp
client = scp.Client(host=host, user=user, keyfile=keyfile)
# or
client = scp.Client(host=host, user=user)
client.use_system_keys()
# or
client = scp.Client(host=host, user=user, password=password)
# and then
client.transfer('/etc/local/filename', '/etc/remote/filename')
scpçağıran bir sürü kod varscp.