蟒蛇Pexpect的我使用Pexpect的创建简单的Python脚本另一台服务器上的SSH找到文件,创建使用无法使用在Linux上使用
CurrentCommand = "ssh " + serverRootUserName + "@" + serverHostName
child = pexpect.spawn(CurrentCommand)
现在我正在像LS-一个或一些命令一个spwan过程“找到的/ opt /许可/ -name‘* .XML’” 使用代码
child.run(mycommand)
如果它工作正常运行,从Pycharm但如果从终端中运行它不工作就无法找到任何文件,我认为它正在研究我的本地系统。
任何人都可以给我一些建议。谢谢
我用这个已经,但它是。不工作child.sendline('mycommand')后跟 child.expect('prompt:') –
您应该期待*然后*发送线路:基本上,您必须等待ssh连接,然后才能尝试将更多数据添加到它。我惊讶地发现ssh不会要求用户名和密码(除非你使用ssh密钥,但是你最好使用-i参数在原始的ssh连接上指定你的密钥。您开始的过程 - 它更多用于运行脚本 – Jmons
我没有在这里写完整的代码,我运行了命令child = pexpect.spawn(CurrentCommand)并提供了密码,所以我现在有了子对象,它是如果我从unix终端的child.sendline(找到/ opt/license/-name'* .xml')后跟child.expect('prompt:'),它不显示数据,来自Pycharm正在工作,它看起来像从我运行python脚本文件的位置查看我的本地服务器,例如[email protected] mypyhton.py –