我使用Python telnetlib採取從router.How的「運行配置」輸出到存儲在variable.And「顯示運行配置」輸出打印變量的變量執行CLI命令和存儲。我的要求是在執行代碼的每一行時,每個輸出都將顯示在控制檯中。是否有任何選項可以避免這些打印語句。使用telnetlib
import telnetlib
#import getpass
ipaddr = "10.1.1.1"
passwd = "abcd123"
tn = telnetlib.Telnet(ipaddr)
if Password:
try:
print (tn.write (password + "\n"))
print(tn.read_until("Router>"))
print(tn.write("enable\n"))
print(tn.read_until("Password:"))
print(tn.write(passwd + "\n"))
print(tn.read_until("Router#"))
print(tn.write("show clock\n"))
print(tn.read_until("#"))
print(tn.write("show running-config\n"))
print(tn.write("\040\n"))
print(tn.write("\040\n"))
print(tn.write("\040\n"))
print(tn.read_until("#"))
print(tn.write("logout\n"))
print(tn.read_until(">"))
print tn.close
你不一定需要打印每一個操作;您可以將它們存儲在變量,對象或字典等內容中,然後再執行打印操作。儘管如此,它看起來非常具有事務性,所以它可能無法變得更加優雅。如果你可以提供一個輸出樣本,這可能是可能的。 – dilbert