Transfert de fichiers SCP en Python
La question recherche une approche élégante et efficace pour effectuer un transfert de fichiers SCP en Python. L'appel os.system couramment utilisé, bien que fonctionnel, n'est pas à la hauteur en termes de compatibilité de plate-forme et de flexibilité dans la gestion de l'authentification.
La solution réside dans l'utilisation du module Python scp pour Paramiko. Ce module s'intègre parfaitement à Paramiko, offrant une interface intuitive pour les opérations SCP. Voici comment cela fonctionne :
<code class="python">import paramiko from scp import SCPClient def createSSHClient(server, port, user, password): client = paramiko.SSHClient() client.load_system_host_keys() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(server, port, user, password) return client ssh = createSSHClient(server, port, user, password) scp = SCPClient(ssh.get_transport()) # Use scp.get() or scp.put() for file transfer</code>
Une fois les clients SSH et SCP établis, vous pouvez exécuter facilement des opérations SCP. Scp.get() récupère un fichier distant, tandis que scp.put() transfère un fichier de votre système local vers un emplacement distant.
Cette approche simplifie le transfert de fichiers SCP en Python, offrant une solution flexible et sécurisée qui peut s'adapter à différents scénarios, comme l'utilisation de clés SSH ou de mots de passe pour l'authentification.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!