Thats newbe experience for ya ;-) thanks. Its seems to work and leads to
another question. whether running the script or stepping thru the process at
the command line I get what looks like hex
C:\Python30>python \Python30\scripts\telnet-tftp1.py
b'\x1b[24;1H\x1b[24;31H\x1b[24;1H\x1b[?25h\x1b[24;31H\x1b[24;31Hy\x1b[24;31H\x1b
[?25h\x1b[24;32H\x1b[24;0H\x1bE\x1b[24;1H\x1b[24;32H\x1b[24;1H\x1b[2K\x1b[24;1H\
x1b[?25h\x1b[24;1H\x1b[1;24r\x1b[24;1H\x1b[2J\x1b[?7l\x1b[1;24r\x1b[?6l\x1b[24;1
H\x1b[?25h\x1b[24;1H\x1b[?6l\x1b[1;0r\x1b[?7l\x1b[2J\x1b[24;1H\x1b[1;1H\x1b[2K\x
1b[24;1H\n\r'
C:\Python30>
I can verify the script ran thru and executed the telnet commands. is there
a switch to convert to binary/ASCI or reduce the logging of the telnet
session ???
Thanks again
Chris
"Gary Herron" <gher...@islandtraining.com> wrote in message
news:mailman.2656.1237996300.11746.python-l...@python.org...
Python Newsgroup wrote:
I'm a total newbe to scripting not to mention python. However I was able
to successfully create a telnet script to initiate login, initiate tftp,
exit, exit, confirm and close session. Frustrated, possibly causing my
own misery. I replace the sript the script with the standard example.
import getpass
import sys
import telnetlib
HOST = "remote linux"
user = raw_input("Enter your remote account: ")
password = getpass.getpass()
tn = telnetlib.Telnet(HOST)
tn.read_until("login: ")
tn.write(user + "\n")
if password:
tn.read_until("Password: ")
tn.write(password + "\n")
tn.write("ls\n")
tn.write("exit\n")
print tn.read_all()
Regardless of the script content, running in windows I constently get
this SyntaxError:
C:\Python30>python c:\Python30\scripts\telnet.py
File "c:\Python30\scripts\telnet.py", line 20
print tn.read_all()
^
SyntaxError: invalid syntax
C:\Python30>
There's the clue:
In python 3.X, print is a function call
print(tn.read_all() )
with lots of formatting and line-ending features
In python 2.X, print is a statement:
print tn.read_all()
If you want one script to work for both Windows and Linux, then you should
probably
be running the same version of Python on each. At least both versions
should be on
the same side for the Python 2.x/3.x version change.
Gary Herron
The same script works fine from linux.
I have also notices some other slight differences: this is my original
script that runs and completes but only if I comment out print. Also
tried to run debug without success in windows again this worked fine in
linux. To run this script in linux I also had to remove the b syntax in
the "b" in the perentesis
import telnetlib
# import pdb
HOST = "HP switch"
tn = telnetlib.Telnet(HOST)
tn.read_until(b'Password: ')
tn.write(b'password\n')
pdb.set_trace()
tn.read_until(b'HP switch# ')
tn.write(b' sh time\n')
tn.read_until(b'HP switch# ')
tn.write(b'exit\n')
tn.read_until(b'HP switch> ')
tn.write(b'exit\n')
tn.read_until(b'Do you want to log out [y/n]? ')
tn.write(b'y')
print tn.read_all()
Any guidance would be appreciated.
Delrey
--
http://mail.python.org/mailman/listinfo/python-list
--
http://mail.python.org/mailman/listinfo/python-list