В основном я использую Telnet для QNX Os, а затем пытаюсь выполнить команду и сохранить эти выходные данные в файл, мой код выглядит следующим образом:
child = pexpect.spawn("telnet x.x.x.x")
fPointer = open(output.txt,'wb')
fPointer.write("\n----------------------------------------------------------
-----------------------\n")
child.logfile = fPointer
child.logfile = sys.stdout.buffer
child.expect(".*login:")
child.sendline(USERNAME)
child.expect("Password for root@localhost:")
child.sendline(PASSWORD)
child.expect(".*#")
Мой вывод файла должен быть таким, как показано ниже:
uname -a
#:~/Desktop$ uname -a
#73~16.04.1-Ubuntu SMP Fri Sep 13 09:56:18 UTC 2019 x86_64 x86_64 x86_64
GNU/Linux
#
-----------------------------------------------------------------------------
ifconfig -a
vinnuvlsm@vinay-D113076920:~/Desktop$ ifconfig
eth0 Link encap:Ethernet HWaddr c4:34:6b:xx:xx:xx
inet addr:x.x.x.x Bcast:x.x.x.x Mask:x.x.x.0
inet6 addr: fe80::179e:8481:9a43:778a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3154568 errors:0 dropped:0 overruns:0 frame:0
TX packets:5245221 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:300747379 (300.7 MB) TX bytes:7343259379 (7.3 GB)
Interrupt:20 Memory:f7c00000-f7c20000
eth1 Link encap:Ethernet HWaddr 00:80:c8:xx:xx:xx
inet addr:x.x.x.x Bcast:x.x.x.x Mask:x.x.x.0
inet6 addr: fe80::fb67:c1c6:5807:e39/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:228528 errors:0 dropped:0 overruns:0 frame:0
TX packets:22424 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:19363964 (19.3 MB) TX bytes:1707534 (1.7 MB)
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:65536 Metric:1
RX packets:51385774 errors:0 dropped:0 overruns:0 frame:0
TX packets:51385774 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:985086108000 (985.0 GB) TX bytes:985086108000 (985.0 GB)
#
Но я не понимаю, как мне добавить ---------- в файл, так как мне нужно работать с буферизованной переменной child.logfile и sys.stdout.
Заранее спасибо за помощь.