python实现上传文件到linux指定目录的方法

 更新时间:2020年01月03日 08:29:31   作者:番茄小子  
这篇文章主要介绍了python实现上传文件到linux指定目录的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

今天接到一个小需求,就是想在windows环境下,上传压缩文件到linux指定的目录位置并且解压出来,然后我想了一下,这个可以用python试试写下。

环境:

1.linux操作系统一台
2.windows环境安装Python3.x
3.Pycharm IDE环境

大家如果对paramiko模块不熟悉的话,可以去了解哈。

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

代码如下

#!/usr/bin/env python
import paramiko
import sys
src_file = sys.argv[1]  #windows下的源文件
dsc_path = sys.argv[2]  #linux上的目录路径
key_path = '私钥路径'
password = '密码'
ssh = paramiko.SSHClient() # 创建SSH对象
private_key = paramiko.RSAKey.from_private_key_file(key_path) # 指定私钥
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 允许连接不在know_hosts文件中的主机
transport = paramiko.Transport(('ip', 端口号))
transport.connect(username='root', pkey=private_key) # 连接服务器
def upload():
  sftp = paramiko.SFTPClient.from_transport(transport)
  try:
    sftp.put(src_file, dsc_path + '/' + src_file)
    print('上传成功')
  except Exception as e:
    print(e)
  ssh.close()
def unzip():
  ssh._transport = transport
  stdin, stdout, stderr = ssh.exec_command('cd ' + dsc_path + '&&' + 'unzip -o ' + src_file)
  result = stdout.read().decode()
  if result.strip() != '':
    print('解压成功')
  else:
    print('Error message ' + stderr.read().decode())
  ssh.close()
if __name__ == '__main__':
  upload()
  unzip()

可以分别通过Pycharm或者cmd来测试脚本运行,下面是用pycharm测试,把apps.zip文件上传到Linux服务器的/tmp目录下,并且解压

 python upload_file.py apps.zip /tmp
 上传成功
 解压成功

然后登陆到Linux服务器的/tmp目录查看是否有压缩文件并且解压

 

总结 :这只是一个简单上传解压功能,请多多指教。

总结

以上所述是小编给大家介绍的python实现上传文件到linux指定目录的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Python retrying 重试机制的使用方法

    Python retrying 重试机制的使用方法

    我们在程序开发中,经常会需要请求一些外部的接口资源,而且我们不能保证每次请求一定会成功,所以这些涉及到网络请求的代码片段就需要加上重试机制。本文就来详细的介绍一下,感兴趣的可以了解一下
    2021-09-09
  • PyMongo进行MongoDB查询和插入操作的高效使用示例

    PyMongo进行MongoDB查询和插入操作的高效使用示例

    这篇文章主要为大家介绍了PyMongo进行MongoDB查询和插入操作的高效使用示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Python函数参数匹配模型通用规则keyword-only参数详解

    Python函数参数匹配模型通用规则keyword-only参数详解

    Python3对函数参数的排序规则更加通用化了,即Python3 keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。这篇文章主要介绍了Python函数参数匹配模型通用规则keyword-only参数,需要的朋友可以参考下
    2019-06-06
  • 举例讲解Python设计模式编程的代理模式与抽象工厂模式

    举例讲解Python设计模式编程的代理模式与抽象工厂模式

    这篇文章主要介绍了Python编程的代理模式与抽象工厂模式,文中举了两个简单的小例子来说明这两种设计模式的思路在Python编程中的体现,需要的朋友可以参考下
    2016-01-01
  • Python获取浏览器Cookies的方法总结

    Python获取浏览器Cookies的方法总结

    在现代网络应用和开发中,使用Cookies是一种常见的方式,它们用于存储用户信息、会话状态等,本文为大家整理了多种Python获取浏览器Cookies的方法,希望对大家有所帮助
    2023-12-12
  • Python实现简易版的Web服务器(推荐)

    Python实现简易版的Web服务器(推荐)

    这篇文章主要介绍了Python实现简易Web服务器的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 带你了解Python妙开根号的三种方式

    带你了解Python妙开根号的三种方式

    这篇文章主要为大家介绍了Python妙开根号的三种方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • 浅析Python的命名空间与作用域

    浅析Python的命名空间与作用域

    这篇文章主要介绍了Python的命名空间与作用域的相关资料,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11
  • 一些常见Python简单算法易错题及答案总结

    一些常见Python简单算法易错题及答案总结

    这篇文章总结了Python编程中的25个常见问题及其解答,涵盖字符串操作、列表操作、字典操作、排序算法、日期时间处理、文件操作、异常处理等多个方面,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-03-03
  • python实现批量获取指定文件夹下的所有文件的厂商信息

    python实现批量获取指定文件夹下的所有文件的厂商信息

    这篇文章主要介绍了python实现批量获取指定文件夹下的所有文件的厂商信息的方法,是非常实用的技巧,涉及到文件的读写与字典的操作等技巧,需要的朋友可以参考下
    2014-09-09

最新评论