Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengeluarkan Nilai Sampah daripada Output SSH Menggunakan Paramiko?

Bagaimana untuk Mengeluarkan Nilai Sampah daripada Output SSH Menggunakan Paramiko?

Linda Hamilton
Linda Hamiltonasal
2024-10-19 07:13:301029semak imbas

How to Remove Junk Values from SSH Output Using Paramiko?

Menghapuskan Nilai Sampah daripada Output SSH Menggunakan Paramiko

Apabila menggunakan perpustakaan Paramiko Python untuk SSH ke dalam mesin jauh dan mendapatkan output baris arahan, anda mungkin menghadapi aksara "sampah" yang tidak dijangka dalam respons, seperti [2Jx1b[1;1H dan u. Ini disebabkan oleh penggunaan kod melarikan diri ANSI, yang bertujuan untuk meningkatkan paparan output dalam terminal interaktif.

Menggunakan Kaedah Pelaksanaan yang Betul

SSHClient Paramiko .invoke_shell secara automatik meminta terminal pseudo, yang boleh mengakibatkan kemasukan kod melarikan diri ini. Untuk pelaksanaan arahan automatik, adalah lebih baik untuk menggunakan SSHClient.exec_command, yang tidak memperuntukkan terminal pseudo secara lalai.

Penyelesaian untuk Sesi Interaktif

Sebagai penyelesaian untuk sesi interaktif, anda boleh mengalih keluar urutan pelarian ANSI menggunakan perpustakaan Python. Walau bagaimanapun, ini adalah penggodaman dan mungkin tidak menyelesaikan sepenuhnya isu lain yang berkaitan dengan menggunakan terminal interaktif.

Penciptaan Manual Saluran Shell

Jika anda memerlukan penggunaan shell saluran kerana keperluan pelayan tertentu, anda boleh membuat saluran secara manual tanpa menggunakan invoke_shell. Ini membolehkan anda mengelakkan peruntukan terminal pseudo.

Pengekodan Unikod

Akhir sekali, awalan u dalam output menunjukkan bahawa rentetan itu berada dalam pengekodan Unikod. Ini penting untuk mengendalikan aksara dalam rentetan dengan betul.

Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Nilai Sampah daripada Output SSH 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