Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengautomasikan Pelaksanaan Perintah SSH dengan Python Menggunakan Paramiko?

Bagaimana untuk mengautomasikan Pelaksanaan Perintah SSH dengan Python Menggunakan Paramiko?

DDD
DDDasal
2024-11-04 22:58:02168semak imbas

How to Automate SSH Command Execution with Python Using Paramiko?

Pelaksanaan Perintah SSH dengan Python

Melaksanakan arahan jauh melalui SSH dari dalam skrip Python boleh meningkatkan tugasan automatik. Satu kaedah untuk mencapai matlamat ini ialah dengan memanfaatkan keupayaan modul paramiko.

Soalan: Skrip memerlukan keupayaan untuk melaksanakan arahan pada pelayan jauh semasa menggunakan kata laluan yang diketahui. Bagaimanakah ini boleh diautomatikkan dalam Python tanpa hanya menggunakan arahan ssh dengan nama pengguna dan hos jauh?

Jawapan:

Untuk mewujudkan sambungan SSH dan melaksanakan arahan dari jauh dalam Python dengan paramiko, ikuti langkah berikut:

  1. Import Modul paramiko: import paramiko
  2. Buat Instance SSHClient: ssh = paramiko .SSHClient()
  3. Sambung ke Pelayan Jauh: ssh.connect(server, username=username, password=password)
  4. Melaksanakan Perintah :

    • ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)
    • Ini mengembalikan tuple yang mengandungi pemegang ke stdin, stdout strim, dan stderr.🎜
  5. Proses Output Perintah:

      stdout.read() akan memaparkan output arahan.
  6. Untuk Pengesahan Kunci SSH:

      k = paramiko.RSAKey.from_private_key_file(keyfilename) atau k = paramiko.DSSKey.from_private_key_file 🎜>
    • ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    • ssh.connect(hostname=host, username=user, pkey=k)

Atas ialah kandungan terperinci Bagaimana untuk mengautomasikan Pelaksanaan Perintah SSH dengan Python Menggunakan Paramiko?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn