广告
返回顶部
首页 > 资讯 > 操作系统 >如何远程执行Linux脚本和命令
  • 829
分享到

如何远程执行Linux脚本和命令

2023-06-16 01:06:59 829人浏览 八月长安
摘要

小编给大家分享一下如何远程执行linux脚本和命令,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!对于 paramiko 安装直接 pip 或者 PyCharm 这

小编给大家分享一下如何远程执行linux脚本和命令,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

对于 paramiko 安装直接 pip 或者 PyCharm 这里就不多说了,如果看到这里你觉得自己不怎么了解python语法的也不必担心,你完全可以用  paramiko 单纯的执行 shell 命令查看结果和上传下载文件,省去重复的工作。

paramiko 实现了 sshv2 协议(底层使用 cryptography ),包含两个核心组件:SSHClient 和 SFTPClient 。  SSHClient 是对 SSH 会话的封装,用于执行远程命令,SFTPClient 是对 SFTP 客户端的封装,用以实现远程文件操作。

这里先举两个列子你应该就明白怎么用了,终于开始正片了。

SSHClient 的列子:

# -*- coding: utf-8 -*- import paramiko client = paramiko.SSHClient()# 实例化SSHClient client.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 自动添加策略,保存服务器的主机名和密钥信息,如果不添加,那么不再本地know_hosts文件中记录的主机将无法连接  client.connect(hostname='192.168.23.134', port=22, username='ftoz', passWord='123456')# 连接SSH服务端,以用户名和密码进行认证  # 打开一个Channel并执行命令 stdin, stdout, stderr = client.exec_command('ls')  # stdout 为正确输出,stderr为错误输出,同时是有1个变量有值  # 打印执行结果 print(stdout.read().decode('utf-8'))  # 关闭SSHClient client.close()

输出:

如何远程执行Linux脚本和命令

这里说明一下:

client = paramiko.SSHClient(), client.set_missing_host_key_policy(paramiko.AutoAddPolicy())你可以理解为固定姿势。 client.connect(hostname='192.168.1.105', port=22, username='ftoz',password='123456')这里就是你的linux变量依次为地址、端口(总共65535个端口,不过ssh默认是22端口)、登录名、密码。 stdin, stdout, stderr = client.exec_command('df -h ') 这里就是核心你需要做的shell命令,这三个变量不用按照这种姿势,你可以随意,不过按照顺序你知道里面装的什么数据就行(重点在输出和错误)。  connect():这个是实现远程服务器连接和认证的,参数有: hostname 连接的目标主机 port=SSH_PORT 指定端口 username=None 验证的用户名 password=None 验证的用户密码 pkey=None 私钥方式用于身份验证 key_filename=None 一个文件名或文件列表,指定私钥文件 timeout=None 可选的tcp连接超时时间 allow_agent=True, 是否允许连接到ssh代理,默认为True 允许 look_for_keys=True 是否在~/.ssh中搜索私钥文件,默认为True 允许 compress=False, 是否打开压缩。  set_missing_host_key_policy():这个是设置远程服务器没有在know_hosts文件中记录时的应对策略。(可以理解为避免报错),参数有: AutoAddPolicy 自动添加主机名及主机密钥到本地HosTKEys对象,不依赖load_system_host_key的配置。即新建立ssh连接时不需要再输入yes或no进行确认 WarningPolicy 用于记录一个未知的主机密钥的Python警告。并接受,功能上和AutoAddPolicy类似,但是会提示是新连接 RejectPolicy 自动拒绝未知的主机名和密钥,依赖load_system_host_key的配置。此为默认选项 exec_command():这是写你需要执行的命令的

接下来你就可以拿出输出做一些该干嘛(ke)干嘛(pa)的事情了,这里先举这个简单的列子。

SFTPClient 常用方法:

t = paramiko.Transport(('192.168.23.134', 22))# 获取Transport实例 t.connect(username='ftoz', password='123456')# 连接SSH服务端,使用password sftp = paramiko.SFTPClient.from_transport(t) sftp.put("F:\S12312.txt","/home/ftoz/zxc12312.txt")#执行上传动作 sftp.get("/home/ftoz/zxc12312.txt", "F:\S12312.txt")#执行下载动作 t.close()

SFTPCLient 作为一个 sftp 的客户端对象,根据 ssh 传输协议的 sftp 会话,实现远程文件操作,如上传、下载、权限、状态

from_transport(cls,t) 创建一个已连通的SFTP客户端通道 put(localpath, remotepath, callback=None, confirm=True) 将本地文件上传到服务器 参数confirm:是否调用stat()方法检查文件状态,返回ls -l的结果 get(remotepath, localpath, callback=None) 从服务器下载文件到本地 mkdir() 在服务器上创建目录 remove() 在服务器上删除目录 rename() 在服务器上重命名目录 stat() 查看服务器文件状态 listdir() 列出服务器目录下的文件

以上是“如何远程执行Linux脚本和命令”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网操作系统频道!

--结束END--

本文标题: 如何远程执行Linux脚本和命令

本文链接: https://www.lsjlt.com/news/281990.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何远程执行Linux脚本和命令
    小编给大家分享一下如何远程执行Linux脚本和命令,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!对于 paramiko 安装直接 pip 或者 PyCharm 这...
    99+
    2023-06-16
  • 怎么远程执行Linux脚本和命令
    这篇文章主要介绍“怎么远程执行Linux脚本和命令”,在日常操作中,相信很多人在怎么远程执行Linux脚本和命令问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么远程执行Linux脚本和命令”的疑惑有所帮助!...
    99+
    2023-06-03
  • shell中使用expect命令进行远程执行命令脚本
    expect是用来实现自动交互功能的工具之一,使用expect-send来实现交互过程。 注意: 1、脚本的执行方法与bash shell不一样,比如:expect example.sh 2、向一个脚本传递参数时,bas...
    99+
    2022-06-04
    用expect进行远程执行命令 shell中使用expect命令进行远程执行命令脚本
  • 如何在shell中使用expect命令进行远程执行命令脚本
    如何在shell中使用expect命令进行远程执行命令脚本?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。expect是用来实现自动交互功能的工具之一,使用expect-send...
    99+
    2023-06-09
  • python脚本实现本地或远程执行命令
    功能:1、执行本地shell命令,执行完成后获取结果2、执行本地shell命令,执行中实时获取输出结果3、执行远程shell命令,执行完成后获取结果4、执行远程shell命令,执行中实时获取输出结果 实际操作:1、安装paramiko ...
    99+
    2023-01-31
    脚本 命令 python
  • ssh远程执行命令方法和Shell脚本实例
    写这篇博客之前,我google了一堆相关文章,大都是说修改/etc/sudoers,然后NOPASSWD:指定的cmd,但是真心不管用,没有远程虚拟终端这个方法就是浮云,ubuntu10.04 server...
    99+
    2022-06-04
    脚本 实例 命令
  • CentOS使用expect批量远程执行脚本和命令
    我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个命令和脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。 这时我们可以使用expect,向目标服务器上发送指令...
    99+
    2022-06-04
    CentOS expect 远程执行 脚本 命令
  • 如何执行mysql命令行脚本
    这篇文章给大家介绍如何执行mysql命令行脚本,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。命令行连接在工作中主要使用命令操作方式,要求熟练编写打开终端,运行命令mysql ...
    99+
    2022-10-18
  • 如何在linux上定期执行命令、脚本
    今天就跟大家聊聊有关如何在linux上定期执行命令、脚本,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。人类把时间做了切割,想象一条笔直的线永远向前,本来这条直线上什么都没有,但是人类...
    99+
    2023-06-28
  • 有哪些ssh远程执行命令方法和Shell脚本
    本篇内容主要讲解“有哪些ssh远程执行命令方法和Shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些ssh远程执行命令方法和Shell脚本”吧!ssh执行远程操作命令格式代码如下:...
    99+
    2023-06-09
  • 如何用PHP执行shell 脚本和 shell命令
    执行 shell 脚本: 或者首先使用 ssh2_connect 函数连接到远程主机,然后使用 ssh2_auth_password 函数进行身份验证。接下来,使用 ssh2_exec 函数执行 shell 脚本,将其输出流作为结果返回。...
    99+
    2023-08-31
    php linux 开发语言 Powered by 金山文档
  • DB2 命令行中如何执行sql脚本
    这期内容当中小编将会给大家带来有关DB2 命令行中如何执行sql脚本,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。DB2 命令行中如何执行sql脚本db2 => connect to dbName ...
    99+
    2023-06-06
  • 如何用shell脚本执行hadoop命令
    要使用shell脚本执行Hadoop命令,可以按照以下步骤操作:1. 创建一个新的文本文件,并使用任何文本编辑器打开它(如vi、na...
    99+
    2023-10-11
    hadoop
  • ​laravel如何用命令来执行脚本
    这篇文章主要介绍“laravel如何用命令来执行脚本”,在日常操作中,相信很多人在laravel如何用命令来执行脚本问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”laravel如何用命令来执行脚本”的疑惑有所...
    99+
    2023-06-21
  • shell脚本如何实现同时多台远程主机执行命令
    这篇文章主要介绍shell脚本如何实现同时多台远程主机执行命令,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实现需求在对单台机器做操作时我们会用“ssh ip”的方式登录到机器上,可以写这样一个工具vssh ip1,...
    99+
    2023-06-09
  • java怎么远程执行linux命令
    可以使用Java中的ProcessBuilder类来远程执行Linux命令。下面是一个简单的示例代码:```javaimport j...
    99+
    2023-09-29
    java linux
  • Python远程linux执行命令实现
    1、远程登录到linux上,使用到的模块paramiko #远程登陆操作系统 def ssh(sys_ip,username,password,cmds): try #创建ssh客户端 clien...
    99+
    2022-06-04
    Python远程linux执行命令 Python linux远程命令
  • linux如何运行sh脚本命令
    在Linux中运行sh脚本命令有以下几种方法:1. 使用sh命令运行脚本:在终端中输入`sh 脚本文件名.sh`,即可运行sh脚本。...
    99+
    2023-09-17
    linux
  • 在linux上定期执行命令、脚本(cron,crontab,anacron)
    人类把时间做了切割,想象一条笔直的线永远向前,本来这条直线上什么都没有,但是人类根据时间的长短(单位)在这条直线上做了密密麻麻的标记(世纪-年-月-日-时-分-秒-纳秒......),通过这样的方式历史上的每一个时刻都能...
    99+
    2022-06-04
    linux 定期执行命令 linux cron crontab anacron
  • node.js在Linux下执行shell命令、.sh脚本的问题
    首先,引入子进程模块 var process = require('child_process'); 执行shell命令 调用该模块暴露出来的方法exec process.exec(...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作