我最近被介绍到结构并尝试接近以下内容:
我能够接近到达远程主机的主要概念并使用结构播放一些命令,但我遇到的问题是,一旦我切换到root" su root"除非我退出,否则我无法执行其余的命令。
我试图接近的例子:
def mytask():
with settings(user="root"):
run('whoami')
run('echo "TEST using root user"')
run('echo "ITS WORKING!!!"')
或类似的东西
def mytask():
run ('su root')
run ('passwd testUser')
在这两种情况下,一旦我输入root密码,就不会执行任何操作,我会返回远程命令行,除非我退回到原始用户。我见过很少关于使用" fexpect"提示但不确定是否会产生影响。
我正在Linux环境中开发。
答案 0 :(得分:1)
你必须使用fexpect和fexpect run命令
from ilogue import fexpect
prompt = ['Password', 'mypassword'] # ('prompt', 'answer') Case sensitive
def test():
with fexpect.expecting(prompt):
fexpect.local("su -")