这篇文章主要介绍了通过python连接Linux命令行代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
代码如下
# !/usr/bin/python # - * -编码:utf - 8 - * “https://www.ibm.com/developerworks/cn/linux/l-cn-pexpect2/index.html” 进口pexpect 导入类型 用户名="根" ip=" 192.168。* * * * * *。” 密码=" * * * * " pex=pexpect。产卵(ssh % s@ % s的%(用户名、ip)) def _check(模式,超时=120): 我=pex。期望(模式,超时=超时) 返回我 def sendcr (cmd): 如果pex==没有: 返回0 n=pex。发送(“% s \ r”% cmd) 返回n def getexec (cmd): 子=pexpect.spawn (cmd) child.expect (pexpect.EOF) 返回child.before if __name__==癬_main__”: 一览表=[[”(& # 63;i)拒绝连接”,假), [" (& # 63;i)主机密钥验证失败了。”假), [" (& # 63;i) VENUSTECH审计系统MA1000”,真正的), #【”(& # 63;i) # \[/]”,真的),# hpux [" (& # 63;i) +比;”,真正的),#窗口 ["。+(在$ #)\ s * $”,真正的),# debian [" (& # 63;i)最后登录”,真正的), [" (& # 63;i)拒绝访问”,假), [" (& # 63;i) NT_STATUS_LOGON_FAILURE”,假), ["(& # 63;我)你确定你想继续联系”,“是”), [" (& # 63;i)身份验证失败(& # 63;保证!)”假), [" (& # 63;i)连接被远程主机关闭”,假), [" (& # 63;i)登录失败”,假), [" (& # 63;i)登录不正确”,假), [" (& # 63;i)需要根”,假), ["(& # 63;我)没有通往主机”,假), [" (& # 63;i)找不到”,假), [" (& # 63;i)糟糕的秘密”,假), ["(& # 63;我)不正确的密码”,假), [" & # 63;我没有权限”,假), #【”(& # 63;i)终端类型”,terminal_type), ["这个私钥将被忽略。”假), ["(& # 63;我)没有通往主机”,假), [" (& # 63;i)按“输入”键继续”,“\ r”), [" (& # 63;i) Y/N”、“Y”), [pexpect。EOF、虚假, [pexpect。超时、错误), [" (& # 63;i)为关键。*:输入密码”,密码), [" (& # 63;i) assword”,密码), [" (& # 63;i)密码”,密码), [" (& # 63;i) sername”,用户名), ["(& # 63;我)(& # 63;& lt; !sful)登录”,用户名), [" (& # 63;i) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -”,真正的]] checklist2=(我为我在[0]一览表) 而真正的: 我=_check (checklist2) 打印我一览表(我)一览表(我)[1] 如果类型(一览表[我][1])是types.BooleanType): 如果类型(一览表[我][1]): 打破 其他: sendcr(一览表[我][1]) cmd=" ls - l/etc/rsyslog.conf " 结果=getexec (cmd) 打印“结果”,结果
打印结果:
26 [' (& # 63;i) assword’,‘* * *’] * * * 5 ((& # 63;i)最后登录的,真正的)真的 结果-rw-r——r。1根根3167年3月13日福音11:24/etc/rsyslog.conf
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。