Python Pexpect未按预期工作。它没有在虚拟机上返回正确的输出

Python Pexpect未按预期工作。它没有在虚拟机上返回正确的输出,python,virtual-machine,ubuntu-12.04,pexpect,Python,Virtual Machine,Ubuntu 12.04,Pexpect,[注意:我已经在物理机上运行了这段代码,它可以工作(OS=Fedora 14)。但是当我在虚拟机上安装的Ubuntu中使用相同的脚本时,它就不工作了。我正在尝试捕获ifconfig输出并保存/打印它。] 我已经在VMPlayer上安装了Ubuntu(它是虚拟机)。我正在使用python脚本语言,并尝试使用Pexpect自动化SSH连接。我正在同一台Ubuntu虚拟机上运行脚本。下面是我正在使用此脚本执行的操作的详细信息: 使用Pexpect,通过SSH连接到本地主机 执行“ifconfig”cl

[注意:我已经在物理机上运行了这段代码,它可以工作(OS=Fedora 14)。但是当我在虚拟机上安装的Ubuntu中使用相同的脚本时,它就不工作了。我正在尝试捕获ifconfig输出并保存/打印它。]

我已经在VMPlayer上安装了Ubuntu(它是虚拟机)。我正在使用python脚本语言,并尝试使用Pexpect自动化SSH连接。我正在同一台Ubuntu虚拟机上运行脚本。下面是我正在使用此脚本执行的操作的详细信息:

  • 使用Pexpect,通过SSH连接到本地主机
  • 执行“ifconfig”cli命令并捕获输出
  • 打印此cli输出
  • 代码段: 结果输出: 预期产出: 如果我手动执行SSH登录到本地主机并在CLI上执行IFCONFIG命令,那么我将在屏幕上看到以下输出:

    admin@ubuntu12:/home/Host# ssh admin@192.168.2.5
    admin@192.168.2.5's password:
    Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.2.0-29-generic-pae i686)
    
     * Documentation:  https://help.ubuntu.com/
    
    67 packages can be updated.
    35 updates are security updates.
    
    Last login: Sat Sep 21 22:55:36 2013 from 192.168.2.5
    admin@ubuntu12:~$ ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:be
              inet addr:192.168.2.5  Bcast:192.168.2.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bbe/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:4270 errors:0 dropped:0 overruns:0 frame:0
              TX packets:3664 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:463331 (463.3 KB)  TX bytes:625129 (625.1 KB)
              Interrupt:19 Base address:0x2024
    
    eth1      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:c8
              inet addr:20.20.20.2  Bcast:20.20.20.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bc8/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:153 errors:0 dropped:0 overruns:0 frame:0
              TX packets:105 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:15340 (15.3 KB)  TX bytes:14388 (14.3 KB)
              Interrupt:16 Base address:0x20a4
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:1456 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1456 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:192908 (192.9 KB)  TX bytes:192908 (192.9 KB)
    
    admin@ubuntu12:~$
    

    将所有“\r\n”替换为“\n”,它将正常工作

    我假设您的ip与主机=Linux中的1.1.1.1不同(“1.1.1.1”、“admin”、“admin123”、“ubuntu”)@blueberryfields:谢谢您的回复。IP没有问题。我在发布代码时已将IP地址更改为1.1.1.1。请改为使用“localhost”。如果我建立连接并返回spawn\u会话id,并在类外使用此spawn\u会话,则此操作有效。即使我尝试在executeCLI方法中传递spawn_会话id,并尝试在方法内部使用以执行“ifocnfig”命令。但它仍然不起作用。
    admin@ubuntu12:/home/Host# python Linux.py
    Output : 12: ~admin12:~$
    
    admin@ubuntu12:/home/Host#
    
    admin@ubuntu12:/home/Host# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:be
              inet addr:192.168.2.5  Bcast:192.168.2.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bbe/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:1733 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1539 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:205502 (205.5 KB)  TX bytes:252126 (252.1 KB)
              Interrupt:19 Base address:0x2024
    
    eth1      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:c8
              inet addr:20.20.20.2  Bcast:20.20.20.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bc8/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:49 errors:0 dropped:0 overruns:0 frame:0
              TX packets:82 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:5132 (5.1 KB)  TX bytes:12322 (12.3 KB)
              Interrupt:16 Base address:0x20a4
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:170 errors:0 dropped:0 overruns:0 frame:0
              TX packets:170 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:27353 (27.3 KB)  TX bytes:27353 (27.3 KB)
    
    admin@ubuntu12:/home/Host#
    
    admin@ubuntu12:/home/Host# ssh admin@192.168.2.5
    admin@192.168.2.5's password:
    Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.2.0-29-generic-pae i686)
    
     * Documentation:  https://help.ubuntu.com/
    
    67 packages can be updated.
    35 updates are security updates.
    
    Last login: Sat Sep 21 22:55:36 2013 from 192.168.2.5
    admin@ubuntu12:~$ ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:be
              inet addr:192.168.2.5  Bcast:192.168.2.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bbe/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:4270 errors:0 dropped:0 overruns:0 frame:0
              TX packets:3664 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:463331 (463.3 KB)  TX bytes:625129 (625.1 KB)
              Interrupt:19 Base address:0x2024
    
    eth1      Link encap:Ethernet  HWaddr 00:0c:29:60:6b:c8
              inet addr:20.20.20.2  Bcast:20.20.20.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe60:6bc8/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:153 errors:0 dropped:0 overruns:0 frame:0
              TX packets:105 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:15340 (15.3 KB)  TX bytes:14388 (14.3 KB)
              Interrupt:16 Base address:0x20a4
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:1456 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1456 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:192908 (192.9 KB)  TX bytes:192908 (192.9 KB)
    
    admin@ubuntu12:~$