python 自动化运维学习中心

本文介绍如何使用paramiko库实现Python远程执行Linux命令,并通过SSH连接。同时,展示了如何利用argparse模块自定义命令行参数,提高脚本的灵活性和实用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.远程执行命令

def ssh(exe):
    import paramiko

    # 实例化SSHClient
    client = paramiko.SSHClient()

    # 自动添加策略,保存服务器的主机名和密钥信息,如果不添加,那么不再本地know_hosts文件中记录的主机将无法连接
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

    # 连接SSH服务端,以用户名和密码进行认证
    client.connect(hostname='192.168.3.13', port=22, username='root', password='uniondrug@123')

    # 打开一个Channel并执行命令
    stdin, stdout, stderr = client.exec_command('{}'.format(exe)) # stdout 为正确输出,stderr为错误输出,同时是有1个变量有值

    # 打印执行结果
    print(stdout.read().decode('utf-8'))

    # 关闭SSHClient
    client.close()

2.argparse模块自定义传餐

import argparse
#实例化
parser = argparse.ArgumentParser()
#添加一个cate的变量
parser.add_argument("--cate")
#添加一个item的变量,并设定他的默认值为test
parser.add_argument("--item", default="test")
args = parser.parse_args()
print(args.cate)
print(args.item)

执行脚本:

python fince.py --cate web
#当item 不传参数时,默认test
python fince.py --cate web --item test
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值