我是新来的,我无法找到我的问题的完整答案。所以我在这里问。 我正在使用python和pexpect模块连接到ssh服务器并运行一些命令。但是有些命令不起作用。我看了看文件,我可以看到,运行如下命令:Python模块pexpect - 如何连接到SSH服务器,然后运行bash命令
ls -l | grep -i <Filter>
因为我必须使用产卵命令与
child = pexpect.spawn('/bin/bash -c "ls -l | grep LOG > logs.txt"')
但是运行bash脚本,我连接到服务器的方式是通过发送带密钥的ssh命令:
p = pexpect.spawn("ssh -t -t [email protected] -i ~/.ssh/Keyfile ")
所以我不能运行带有bash命令的spawn命令(或者我可以吗?)
响应应该是密码请求,因为它将其重定向到另一台机器。
如何使用spawn命令,以便我可以使用键连接到服务器,然后输入重定向机器的密码,然后运行bash命令。
注:我试图找出bash部分。连接到服务器和重定向+密码插入已经适用于我。
谢谢,我不知道为什么这种明显的解决方案并没有来找我:) 另外请注意,我想这在Android设备上过哪里有no/bin/bash而是bin/sh 我不得不声明bin位于系统中,因此结果将是 ** ssh.sendline('system/bin/sh -c“ls -l | grep LOG> logs.txt “'); ** 如果有人感兴趣 – Steven