网络编程与自动化运维

方法一
# 2024/6/19
import getpass
import telnetlib

HOST = "localhost"
user = input("Enter your remote account: ")
password = getpass.getpass()

tn = telnetlib.Telnet(HOST)

tn.read_until(b"login: ")
tn.write(user.encode('ascii') + b"\n")
if password:
    tn.read_until(b"Password: ")
    tn.write(password.encode('ascii') + b"\n")

tn.write(b"ls\n")
tn.write(b"exit\n")

print(tn.read_all().decode('ascii'))

方法二

# 2024/6/19
import getpass
import telnetlib
import time
def telnet_func(host,user,password,pwd,*args)
    tn = telnetlib.Telnet(host)
    tn.read_until(b"login: ")
    tn.write(user.encode('ascii') + b"\n")
    if password:
        tn.read_until(b"password: ")
        tn.write(password.encode('ascii') + b"\n")
        time.sleep(1)

        tn.write(b"enable\n")
        time.sleep(1)
        tn.write(pwd.encode('ascii') + b"\n")
        time.sleep(1)

        for i in args:
            tn.write(i.encode('ascii') + b"\n")
            time.sleep(1)
        tn.write(b"exit\n")
        time.sleep(1)

    print(tn.read_all().decode('ascii'))

if __name__ == "__main__":
    host = input("请输入设备IP地址: ")
    user = input("请输入用户名:")
    password = getpass.getpass("请输入密码:")
    pwd = getpass.getpass(("输入enable密码:"))
    cmd = input("输入需要执行的命令,多个命令用逗号分隔!")
    cmd_list = tuple(cmd.split(','))


    telnet_func(host,user,password,pwd,*cmd_list)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值