首頁  >  文章  >  後端開發  >  如何解決 Unix 指令的 Paramiko exec_command 中的「找不到指令」錯誤?

如何解決 Unix 指令的 Paramiko exec_command 中的「找不到指令」錯誤?

Patricia Arquette
Patricia Arquette原創
2024-10-21 07:00:03526瀏覽

How to Resolve

使用Paramiko 的exec_command 時,Unix 命令失敗並顯示「未找到命令」錯誤

在「sesu」等Unix 命令失敗並顯示「透過Python 的Paramiko exec_command 執行時出現「command not found」錯誤,根本原因可能在於SSHClient.exec_command 的預設行為。

了解預設行為

了解預設行為

HCl不要依賴PATH,而是使用指令的完整路徑,例如「/bin/sesu test。 」

修改啟動腳本:

確保啟動腳本為互動式和非互動式會話設定一致的PATH。
  1. 透過登入Shell 執行指令:
  2. 透過登入Shell 執行指令: 使用「- -login" 開關以透過登入shell 明確執行命令,例如,"bash --login -c "sesu test"。 "
  3. 修改指令環境: 改變其中的環境指令本身,確保正確設定基本變數。
  4. 強制偽終端分配(不建議):將「get_pty」參數設定為True 為exec 通道指派偽終端。

以上是如何解決 Unix 指令的 Paramiko exec_command 中的「找不到指令」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn