2015-12-16 81 views
1

我写在Python 2.7的程序,创建SSH连接并输出该命令的结果输入。它工作正常,但我想隐藏的提示输出,或者是有消除对提示的需要的呢?隐藏prexcept提示输出

这是我的代码负责输出:

if cmd == '!': 
     print ("Connection terminated.") 
     self.session.logout() 
     sys.exit(0) 
    else: 
     self.session.sendline(cmd) 

     with suppress_stdout(): 
      self.session.prompt() 

     return self.session.before 

样本输出(I想摆脱第二 'LS' 的):

-> ls 
ls 
bin dev initrd.img  lib32 lost+found opt run sys var 
boot etc initrd.img.old lib64 media  proc sbin tmp vmlinuz 
cdrom home lib    libx32 mnt   root srv usr vmlinuz.old 

-> 

回答

0

的pexcept提示()是的一种特殊情况除外()识别大多数类型的提示标识符。 self.session.before正在采取最近使用的提示,使用提示之间的一切;换句话说,它正在输入命令和输出。为了摆脱重复的命令,只是消除了字符串的第一个字。我通过了分割字符串转换成列表,然后,打印一切除了列表的第一个元素这样做。