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>

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

Reply via email to