python - 无法使用 Ride-Robot-SSH 库执行命令
问题描述
我正在探索为我的项目使用 RIDE-Robot 框架的选项。在这里,我使用的是 SSH 库。
我正在尝试登录我的服务器,然后尝试执行一些命令
手动,我试图登录到服务器,然后给出一个 sudo admin 命令,然后执行命令集。
使用 Ride- 我正在使用 Open Connection,Execute Command 关键字
我可以使用用户名和密码登录服务器,但无法执行命令。
你能帮我理解如何执行命令吗?
我可以使用用户名和密码打开连接和登录。
帕拉米科
import paramiko
from paramiko import SSHClient
ssh = SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('10.184.59.41', username='******', password='*******')
shell=ssh.invoke_shell()
shell.settimeout(0.5)
ssh.exec_command("sudo -u tradmin -E bash")
ssh.exec_command("/ThomsonReuters/apps/hillfarber")
******骑******
Open Connection 10.184.59.41
Login ${username} ${password}
Execute Command sudo - u tradmin -E bash
${stdout}= Execute Command /ThomsonReuters/tools/bin/adsmon -key 29 -get IDBFeed c205xcmpdfh01.ECP_TUL.IDBFeed.IDBFeed PageCount
无法执行命令,不显示错误
解决方案
的每次调用Execute Command
都在一个新的 shell 中 - 因此第一个调用sudo
不会影响第二个的用户。请参阅关键字文档,建议在同一 shell中使用Write
和关键字来保持命令执行的连续性。Read
或者,您可以将这两个调用组合在一个命令中 - sudo ... adsmon ...
.
推荐阅读
- c++ - 如何用“*”字符替换输入字符?
- reactjs - 未找到模块:无法解析 ../MyApp\src 中的“./serviceWorker”
- reactjs - ReactJS:我如何知道哪个依赖项使 useEffect 挂钩运行/触发?
- json - 将对象推送到 SQL Server 中的 json 数组
- django - Django REST RetrieveUpdateAPIView 问题
- protocol-buffers - MSYS2 endian.h 构建协议缓冲区时没有这样的文件或目录
- highcharts - 在 highcharts 水平条形图中,我无法显示默认刻度
- node.js - 部署后的 GraphQL 拒绝连接
- vue.js - 当我设置哈希属性时,Vue路由器不滚动
- python - Selenium - WebDriverWait 直到找到保存在列表中的任何 xpath