Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Beberapa Perintah Unix Mengembalikan Ralat \'tidak dijumpai\' dalam Paramiko Exec_Command Python?

Mengapa Beberapa Perintah Unix Mengembalikan Ralat \'tidak dijumpai\' dalam Paramiko Exec_Command Python?

DDD
Lepaskan: 2024-10-21 06:57:02
asal
450 orang telah melayarinya

Why Do Some Unix Commands Return

Ralat "tidak ditemui" dengan Perintah Unix dalam Paramiko Python

Apabila cuba melaksanakan arahan 'sesu' pada pelayan Unix menggunakan Python's Paramiko exec_command, pengguna mungkin menghadapi mesej ralat "sh: sesu: tidak dijumpai." Isu ini timbul hanya dengan arahan tertentu, seperti 'sesu,' manakala perintah lain, seperti 'ls,' berfungsi seperti yang dimaksudkan.

Ralat ini berpunca daripada tingkah laku lalai dalam SSHClient.exec_command, yang tidak menjalankan shell dalam mod "log masuk" dan tidak memperuntukkan terminal pseudo. Akibatnya, pelaksanaan arahan mungkin berbeza daripada sesi SSH interaktif, di mana skrip permulaan dan pembolehubah persekitaran tertentu diperolehi atau digunakan.

Penyelesaian Kemungkinan

Penyelesaian berikut disyorkan mengikut keutamaan:

  • Ubah suai arahan untuk menentukan laluan penuh kepada boleh laku:
/bin/sesu test
Salin selepas log masuk
  • Konfigurasikan skrip permulaan untuk menetapkan PATH secara konsisten:
  • Jalankan arahan secara eksplisit melalui shell log masuk:
bash --login -c "sesu test"
Salin selepas log masuk
  • Ubah persekitaran dalam perintah itu sendiri:
PATH="$PATH;/path/to/sesu" && sesu test
Salin selepas log masuk
  • Sebagai langkah terakhir (tidak disyorkan):
stdin,stdout,stderr = ssh.exec_command('sesu test', get_pty=True)
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Beberapa Perintah Unix Mengembalikan Ralat \'tidak dijumpai\' dalam Paramiko Exec_Command Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan