我建议将ssh称为子进程。它可靠且便携。
import subprocessproc = subprocess.Popen(['ssh', 'user@host', 'cat > %s' % filename], stdin=subprocess.PIPE)proc.communicate(file_contents)if proc.retpre != 0: ...
您不必担心引用目标文件名。如果您想要更大的灵活性,甚至可以这样做:
import subprocessimport tarfileimport iotardata = io.BytesIO()tar = tarfile.open(mode='w:gz', fileobj=tardata)... put stuff in tar ...proc = subprocess.Popen(['ssh', 'user@host', 'tar xz'], stdin=subprocess.PIPE)proc.communicate(tardata.getvalue())if proc.retpre != 0: ...



