use jar:commons-net-3.5-bin
code:
package jiankongLinux;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
import org.apache.commons.net.telnet.TelnetClient;
public class telnet2{
// private TelnetClient telnet = new TelnetClient();
private static InputStream in;
private static PrintStream out;
private static final String DEFAULT_AIX_PROMPT = "#";
private static final String ENTER_COMMAND_ARROW = ">";
private static final String ENTER_COMMAND_BRACKETS = "]";
private static final String ENTER="\n";
public static void main(String[] args) {
TelnetClient telnet = new TelnetClient();
try {
telnet.connect("192.168.10.100",Integer.parseInt("23"));
in = telnet.getInputStream();
out = new PrintStream(telnet.getOutputStream());
telnet.setKeepAlive(true);
String msg=readUntil("login:");
write("S1");
msg=readUntil("Password:");
write("123456");
msg=readUntil(ENTER_COMMAND_ARROW);
write("dis vlan b");
// write(ENTER);
int spacetime=1;
while(spacetime<20){
write(" ");
spacetime=spacetime+1;
}
msg=readUntil("<");
System.out.println(msg);
telnet.disconnect();
} catch (NumberFormatException | IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static String readUntil(String pattern) {
try {
char lastChar = pattern.charAt(pattern.length() - 1);
StringBuffer sb = new StringBuffer();
char ch = (char) in.read();
while (true) {
//System.out.print(ch);// ---需要注释掉
sb.append(ch);
if (ch == lastChar) {
if (sb.toString().endsWith(pattern)) {
return sb.toString();
}
}
ch = (char) in.read();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static void write(String value) {
try {
out.println(value);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
}
python:
import telnetlib
import getpass
import sys
HOST = "192.168.10.100"
user = "S1"
password = "123456"
spacetime = 1
tn = telnetlib.Telnet(HOST)
tn.read_until("login:")
tn.write(user+"\n")
tn.read_until("Password:")
tn.write(password+"\n")
tn.read_until(">")
tn.write("sys\n")
#tn.read_until("Password:")
#tn.write(password+"\n")
tn.read_until("]")
tn.write("dis curr\n")
while spacetime <= 20:
tn.write(" ")
spacetime = spacetime + 1
msg=tn.read_until("return")
tn.write("quit\n")
path = r"d:\config.txt"
f = file(path,"wb")
f.write(msg)
f.close()
tn.close
that's all!!