python创建文件linux_Python脚本远程Linux创建目录、上传文件

2023-11-09

最近这段时间,经常通过xftp在服务器上创建目录并上传文件,繁琐的事一直循环的做,因此一直在想通过Python脚本能自动创建目录,上传文件,询问公司大佬和百度终于找到了方法,接下来看看。

一. 说明

主要安装两个模块paramiko与scp,功能即可实现

paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作,值得一说的是,fabric和ansible内部的远程管理就是使用的paramiko来现实。

scp是我们在shell上经常使用的命令,用来远程传输文件。python上也能做到scp的功能

一. 代码实例

# coding:utf-8

import paramiko

from scp import SCPClient

class Host:

def __init__(self):

self.user = ""

self.ip = "root"

self.password = "123456"

# 创建目录

def mkdir(self):

try:

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(self.ip, username=self.user, password=self.password)

sftp = ssh.open_sftp()

sftp.mkdir("/data/etc/bill/20200224")

print("Create folder ‘20200224‘ in remote hosts successfully!\n")

ssh.close()

except:

print("Create folder failure!\n")

def upload_img(self,img_name, remote_path="/data/etc/bill/20200224",

file_path="D:\PythonProject\img"):

ssh_client = paramiko.SSHClient()

ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)

ssh_client.connect(self.ip, username=self.user, password=self.password)

scpclient = SCPClient(ssh_client.get_transport(), socket_timeout=15.0)

local_path = file_path + "\\" + img_name

try:

scpclient.put(local_path, remote_path)

except FileNotFoundError as e:

print(e)

print("系统找不到指定文件" + local_path)

else:

print("文件上传成功")

ssh_client.close()

if __name__ == ‘__main__‘:

t = Host

print("Begin......\n")

t.mkdir()

img_name = 1.jpg

upload_img( img_name)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python创建文件linux_Python脚本远程Linux创建目录、上传文件 的相关文章

  • 多线程(七)锁策略 (乐观锁,悲观锁,读写锁,自旋锁,可重入锁)

    目录 一 乐观锁和悲观锁 1 乐观锁的理解 2 悲观锁的理解 二 读写锁 1 什么是读写锁 2 读写锁的三种状态 3 读写锁的实现 三 公平锁和非公平锁 四 可重入锁 1 可重入锁 2 可重入锁 VS 自旋锁 五 cas实现和synchro
  • 【java】id非自增的表怎么将数据批量插入数据库

    目录 示例 实体 service层 实现层 mapper mapper xml 技术框架 springboot dubbo mybatis plus id非自增的表怎么将数据批量插入数据库 mapper mapper xml都要改 示例 添
  • conda 导出环境/导入环境/导出base环境以及踩坑

    conda 导出环境 导入环境 导出base环境 参考链接 https blog csdn net shunaoxi2313 article details 92003710 conda的虚拟环境真的非常实用 尤其是对于大的深度学习项目 给
  • Longest Consecutive Sequence

    Given an unsorted array of integers find the length of the longest consecutive elements sequence For example Given 100 4
  • Java实现 LeetCode 704 二分查找(三种解法详解)

    二分查找常见三种解法详解 1 二分法 基础版 左闭右闭区间 2 二分法 改进版 左闭右开区间 3 二分法 平衡版 左闭右开区间 704 二分查找 给定一个 n 个元素有序的 升序 整型数组 nums 和一个目标值 target 写一个函数搜
  • Linux设置进程名称(标题) ( 7) -【Linux通信架构系列 】

    系列文章目录 C 技能系列 Linux通信架构系列 C 高性能优化编程系列 深入理解软件架构设计系列 高级C 并发线程编程 期待你的关注哦 现在的一切都是为将来的梦想编织翅膀 让梦想在现实中展翅高飞 Now everything is fo
  • MyBatis Generator 生成的example 使用 and or 简单混合查询

    MyBatis Generator 生成的example 使用 and or 简单混合查询 参考博客 https www cnblogs com kangping p 6001519 html 简单介绍 Example类用于构造复杂的筛选条
  • glTF格式初步了解

    glTF格式初步了解 最近看到Qt 3D的进展 偶然了解到了一种新的格式 glTF格式 这种格式据说比现有的3D格式更加符合OpenGL应用的需要 这引起了我的好奇 于是我在Qt 3D的外部链接中找到了有关glTF的相关链接 上海萌梦信息科
  • Mysql int(11)和Oracles nubmer(11) 的区别

    先说Mysql int 11 到底代表什么意思 这里的int 11 不是表示限制int的长度为11 而是字符的显示宽度 在字段类型为int时 无论你显示宽度设置为多少 int类型能存储的最大值和最小值永远都是固定的 那么这个显示宽度到底有什
  • Java中final关键字的作用

    final关键字可以用来修饰引用 方法和类 1 用来修饰一个引用 如果引用为基本数据类型 则该引用为常量 该值无法修改 如果引用为引用数据类型 比如对象 数组 则该对象 数组本身可以修改 但指向该对象或数组的地址的引用不能修改 如果引用为类
  • 开源DataX集成可视化项目Datax-Web的安装

    关于datax web项目 在做DataX项目测试的时候又收到github的推荐邮件 推荐了一个datax web的开源项目 这不是瞌睡遇到枕头 再研究研究这个项目是不是符合数据同步的要求 datax web https github co
  • JavaWeb 【基础】 servelet 异步操作

    在实际工作中我们会遇到一些耗时操作 这个时候如果不能及时response 就会返回失败 想要执行异步操作 延时返回数据 可以使用以下方法 使用asyncSupported true注解 WebServlet name apitest asy
  • Mysql基础(十二):隔离/锁/MVCC/ReadView

    目录 1 业务系统并发对数据库执行事务 2 脏写 脏读 3 不可重复读 4 幻读 5 事务隔离机制 6 MySQL如何支持4种隔离级别 Spring事务注解如何设置 7 undo log版本链是个什么东西 8 ReadView机制 多个事务
  • Java课题笔记~ Axios

    Axios 对原生的AJAX进行封装 简化书写 Axios官网是 https www axios http cn 2 1 基本使用 axios 使用是比较简单的 分为以下两步 引入 axios 的 js 文件 使用axios 发送请求 并获
  • Steam 灵感的游戏卡悬停效果

    先看效果 再看代码 查看更多
  • 【CSAPP】Binarybomb 实验(phase_1-6+secret_phase)

    Binarybomb 实验 phase 1 6 secret phase 实验内容 一个 binary bombs 二进制炸弹 下文将简称为炸弹 是一个Linux可执行C程序 包含了7个阶段 phase1 phase6和一个隐藏阶段 炸弹运
  • ROS学习笔记13--urdf文件报错:GazeboRosControlPlugin missing <legacyModeNS> while using DefaultRobotHWSim.....

    环境 ubuntn16 04 ROS kinetic vs code urdf文件运行时候报错如下 ERROR 1527494740 144219702 307 635000000 GazeboRosControlPlugin missin
  • jobdu 1 排序

    题目描述 对输入的n个数进行排序并输出 输入 输入的第一行包括一个整数n 1 lt n lt 100 接下来的一行包括n个整数 输出 可能有多组测试数据 对于每组数据 将排序后的n个整数输出 每个数后面都有一个空格 每组测试数据的结果占一行
  • MySQL存储过程与存储函数的区别

    语法定义上的区别就不说了 说一下其他的 如果有不正确的地方 还请大家指正 1 总述 存储函数和存储过程统称为存储例程 stored routine 两者的定义语法很相似 但却是不同的内容 存储函数限制比较多 比如不能用临时表 只能用表变量

随机推荐

  • STM32F4 DWT功能 实现程序运行时间精确测试

    时间戳相关寄存器定义 在Cortex M里面有一个外设叫DWT Data Watchpoint and Trace 该外设有一个32位的寄存器叫CYCCNT 它是一个向上的计数器 记录的是内核时钟运行的个数 最长能记录的时间为 10 74s
  • Dubbo各种协议

    原文地址 http dubbo io User Guide zh htm UserGuide zh 协议参考手册 协议参考手册 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直接上传 img QStFh0Ov 166207932
  • 给定一系列正整数请按要求对数字进行分类并输出以下 5 个数字:A1=能被 5 整除的数字中所有偶数的和被5除后余1的数字按给出顺序进行交错求和被5除后余2的数字的个数被5除后余 3 的数字的平均数

    1012 数字分类 20 分 给定一系列正整数 请按要求对数字进行分类 并输出以下 5 个数字 A1 能被 5 整除的数字中所有偶数的和 A2 将被 5 除后余 1 的数字按给出顺序进行交错求和 即计算 n1 n2 n3 n4 A3 被 5
  • k8s资源控制

    文章目录 资源限定 资源限定 tomcat deploy yml apiVersion extensions v1beta1 kind Deployment metadata name tomcat deploy spec replicas
  • malloc相关内容,你知道吗?

    当一个程序经过预编译 编译 链接之后到底经历了一个怎样的过程呢 当我们写的程序内有malloc操作 那么内存到底可以申请多大呢 简单的来说下 程序首先在编译器中 经过编译之后会形成汇编格式的 o后缀的文件 经过链接之后 形成 exe的可执行
  • Java Learning - 6.3 五子棋联机模式

    在前一篇博文中完成了单机五子棋的编写 接下来将在其基础上完成联机模式 这里的联机模式采用主从形式 需要服务器端启动后 等待客户端连接以匹配游戏 目录 过程存储 胜负逻辑 悔棋 重新开始 存储本局棋谱 回放棋局 下一步 服务器类 为了进行联机
  • uni-app使用ucharts地图(主要微信小程序-初步使用)

    下载 https ext dcloud net cn plugin id 271 描述 根据数据门店数量 地图颜色逐步加深 效果 使用 目录结构 新建index vue 复制以下内容
  • 关于web3营销的一切知识

    Web3 时而神秘代表未来 有时又充满黑暗与欺骗 因为 Web3 与科技和金融紧密相关 而这两者又代表着当今世界的方向与人性 有很多人在说 Web3 就是数据的归属权转移 而我认为除此之外 Web3 更是社会里众多组织架构 利益关系 资源配
  • R语言基础 5 (常用函数及其应用)

    R语言的函数形式为 Functionname variable1 variable2 对于R中的函数可以有如下分类 下面我们将按以上分类介绍一些常见的函数 及其使用方法 一 数学函数 1 abs x 绝对值 gt abs 4 1 4 2 s
  • 低成本IMU的标定与性能评价

    低成本IMU的标定与性能评价 摘要 IMU 惯性测量单元 被广泛的使用在许多的机器人应用中 例如导航和建图任务 在大部分这种系统中 IMU和其他传感器数据 如 GPS 距离传感器 相机 进行融合 为了更好的结果 为了最小化系统的传播误差 I
  • Linux线程的基本使用

    目录 一 基本概念 二 线程 1 线程创建 2 线程退出 3 线程等待 4 线程创建Demo 三 互斥锁 1 创建及销毁互斥锁 2 加锁及解锁 3 互斥锁Demo 4 面试问题 进入死锁 四 条件 1 创建及销毁条件变量 2 等待 3 触发
  • C语言学习笔记(一)

    1 不是注释 注意与python的区别 注释是 2 main函数是程序的入口 是主函数 c程序必须有一个main函数 3 main前面的 int 表示main函数调用之后返回一个整型值 有的main函数前面是viod 表示主函数无返回值 但
  • 【华为OD机试真题2023B卷 JAVA&JS】评论转换输出

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 评论转换输出 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 在一个博客网站上 每篇博客都有评论 每一条评论都是一个非空英文字母字符串 评论具有树状结构 除了根评论外
  • 计算机视觉系列-2-图像分类

    给定一张输入图像 图像分类的任务是判断该图像属于哪类 如果是多任务分类 可以用于分类该图像包含哪个类别 深度学习作为机器学习中非常重要的分支 在图像领域中应用非常广泛 在图像分类任务中 通常采用卷积层 CNN 提取特征 加上全连接层进行分类
  • 【牛客网】不要二

    题目描述 二货小易有一个W H的网格盒子 网格的行编号为0 H 1 网格的列编号为0 W 1 每个格子至多可以放一块蛋糕 任意两块蛋糕的欧几里得距离不能等于2 对于两个格子坐标 x1 y1 x2 y2 的欧几里得距离为 x1 x2 x1 x
  • Springboot之Bean的加载过程

    加载和实例化bean分以下几个重要步骤 1 根据package扫描出需要被管理的类 2 将这些类封装成BeanDefinition并注册到BeanFactory容器 3 实例化所有扫描到的BeanDefinition 其中包括解决循环依赖
  • openCV中convertTo的用法

    convertTo的用法 src convertTo dst type scale shift img参数为图像数据来源 其类型为Mat 注意也不是所有格式的Mat型数据都能被使用保存为图片 目前OpenCV主要只支持单通道和3通道的图像
  • 1--线性神经网络(softmax回归)

    1 1 softmax简述 1 1 1 softmax回归和线性回归的异同 首先线性回归是一种回归算法 根据当前数据去学习直线的两个参数 适 于输出为连续值的情景 而softmax回归则是一种分类算法 该算法将输出的是该样本属于每个类别的概
  • IDEA2020.1中plugins中搜索不到插件问题解决

    方法1 老版本的 File gt setting界面 gt Updates gt 去掉Use secure connection的勾 方法2 https plugins jetbrains com 设置完多等一会就能搜索了 再不行就用手机热
  • python创建文件linux_Python脚本远程Linux创建目录、上传文件

    最近这段时间 经常通过xftp在服务器上创建目录并上传文件 繁琐的事一直循环的做 因此一直在想通过Python脚本能自动创建目录 上传文件 询问公司大佬和百度终于找到了方法 接下来看看 一 说明 主要安装两个模块paramiko与scp 功