【问题分析】paramiko 执行命令报 No such file or directory

问题: 为什么这串代码执行 ls 等命令会报 sh: ls: cannot excute - No such file or directory 的问题?

原因分析:

  1. paramiko 默认使用 non-interactive / non-login shell
    当你使用 exec_command() 时,paramiko 启动的是一个非交互式、非登录式的 shell;这种 shell 不会加载完整的用户环境变量(如 PATH),导致找不到 /bin/ls 等命令。

解决方法:

  1. 使用命令的完整路径

    bash 复制代码
    使用 which 命令查看文件的完整路径, 例如: which ls 完整路径为 /bin/ls
    stdin, stdout, stderr = client.exec_command('/bin/ls')
相关推荐
tan180°7 分钟前
Linux网络HTTP(上)(7)
linux·网络·http
小醉你真好14 分钟前
17、Centos9 安装 1Panel
linux·docker·运维开发
新子y16 分钟前
【小白笔记】岛屿数量
笔记·python
CLubiy21 分钟前
【研究生随笔】Pytorch中的线性代数
pytorch·python·深度学习·线性代数·机器学习
reasonsummer23 分钟前
【办公类-115-02】20251018信息员每周通讯上传之文字稿整理(PDF转docx没有成功)
python·pdf
材料科学研究31 分钟前
深度学习物理神经网络(PINN)!
python·深度学习·神经网络·pinn
兰文彬36 分钟前
Pytorch环境安装指南与建议
人工智能·pytorch·python
九皇叔叔39 分钟前
Linux Shell 正则表达式:从入门到实战,玩转文本匹配与处理
linux·mysql·正则表达式
lhxcc_fly1 小时前
Linux网络--6、网络层
linux·网络·ip
刺客xs1 小时前
linux GDB调试器
linux·运维·windows