作家
登录

ShutIt:一个基于Python的shell自动化框架

作者: 来源: 2017-06-23 15:44:53 阅读 我要评论

'bash'
  •  
  • session2 = shutit.create_session('bash'
  •  
  • password1 = session.get_input('Password for server1', ispass=True
  •  
  • password2 = session.get_input('Password for server2', ispass=True
  •  
  • session1.login('ssh you@one.example.com'user='you'password=password1) 
  •  
  • session2.login('ssh you@two.example.com'user='you'password=password2) 
  •  
  • capacity = session1.send_and_get_output(capacity_command) 
  •  
  • if int(capacity) < 10: 
  •  
  • print('RUNNING OUT OF SPACE ON server1!'
  •  
  • capacity = session2.send_and_get_output(capacity_command) 
  •  
  • if int(capacity) < 10: 
  •  
  • print('RUNNING OUT OF SPACE ON server2!'
  •  
  • session1.logout() 
  •  
  • session2.logout()  
  • 在这里,我们用了“sendandget_output”办法来获取capacity_command敕令的输出。

    还有很多加倍优雅的办法可以完成膳绫擎的操作,但这取决于你想要Python有多聪慧。

    假设你须要跟一个敕令行法度榜样进行交互,并且要实现主动化操作。在这里,我们应用telnet来举一个简单的例子:

    1. import shutit 
    2.  
    3. session = shutit.create_session('bash'
    4.  
    5. session.send('telnet', expect='elnet>', echo=True
    6.  
    7. session.send('open google.com 80', expect='scape character', echo=True
    8.  
    9. session.send('GET /', echo=True, check_exit=False
    10.  
    11. session.logout()  

    留意“expect”的参数。你只须要给出telnet提示符的一个子集来进行匹配。

    留意“check_exit”的参数,后面我们会讲到这个参数的。膳绫擎这段代码将输出:

    1. $ python example.py 
    2.  
    3. telnet 
    4.  
    5. telnet> open google.com 80 
    6.  
    7. Trying 216.58.214.14... 
    8.  
    9. Connected to google.com. 
    10.  
    11. Escape character is 

        推荐阅读

        Linux基金会透露未来 Linux内核可能会引入形式验证

      本月19日在北京举办的 LC3 大年夜会 (LinuxCon + ContainerCon + CloudOpen)应当是全球最顶级的开源大年夜会了,而这一为期两天的开源嘉会以前几年在北美、欧洲和日本都举办过,而此次是其初次来到中国。就在同一天>>>详细阅读


      本文标题:ShutIt:一个基于Python的shell自动化框架

      地址:http://www.17bianji.com/lsqh/35881.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)