python连接linux系统处理文件

简介: 使用paramiko库处理
#coding:utf-8importparamikoimportosfromcommon.yaml_info.configure_yamlimport*config_data=get_yaml(file_name="config.yaml")
ip=config_data["ip"]
port=config_data["port_ssh"]
username=config_data["username"]
password=config_data["password"]
classFileUtil:
@staticmethoddefupload_file(local_path, remote_path):
"""        上传文件到远程目录中        :param local_path:本地文件目录        :param remote_path:远程文件目录        :return:        """transport=paramiko.Transport((ip, port))
try:
transport.connect(username=username, password=password)
sftp_client=paramiko.SFTPClient.from_transport(transport)
sftp_client.put(local_path, remote_path)
sftp_client.close()
transport.close()
returnTrueexcept:
transport.close()
print("ssh连接失败")
returnFalse@staticmethoddefwrite_file(content, remote_path):
"""        向远程文件内写入内容,该方法为替换        :param content: 文件的字符串行        :param remote_path: 远程文件目录        :return:        """transport=paramiko.Transport((ip, port))
try:
transport.connect(username=username, password=password)
sftp_client=paramiko.SFTPClient.from_transport(transport)
fo=sftp_client.open(filename=remote_path, mode='w')
fo.writelines(content)
fo.flush()
sftp_client.close()
transport.close()
returnTrueexcept:
transport.close()
print("ssh连接失败")
returnFalse@staticmethoddefbatch_upload_files(local_path, remote_path):
"""        批量上传文件到远程目录中        :param local_path:本地文件目录        :param remote_path:远程文件目录        :return:        """transport=paramiko.Transport((ip, port))
try:
file_list= []
transport.connect(username=username, password=password)
sftp_client=paramiko.SFTPClient.from_transport(transport)
files=os.listdir(local_path)
files.remove("__init__.py")
print(files)
forfinfiles:
# if f == "__init__.py":#     continuesftp_client.put(os.path.join(local_path, f), os.path.join(remote_path, f))
file_list.append(f.split('.')[0])
sftp_client.close()
transport.close()
returnfile_listexcept:
transport.close()
print("ssh连接失败")
returnFalse
目录
相关文章
|
2天前
|
数据挖掘 Python
🚀告别繁琐!Python I/O管理实战,文件读写效率飙升的秘密
在日常编程中,高效的文件I/O管理对提升程序性能至关重要。Python通过内置的`open`函数及丰富的库简化了文件读写操作。本文从基本的文件读写入手,介绍了使用`with`语句自动管理文件、批量读写以减少I/O次数、调整缓冲区大小、选择合适编码格式以及利用第三方库(如pandas和numpy)等技巧,帮助你显著提升文件处理效率,让编程工作更加高效便捷。
13 0
|
22天前
|
安全 项目管理 Python
使用Python shutil库进行文件和目录操作
使用Python shutil库进行文件和目录操作
使用Python shutil库进行文件和目录操作
|
10天前
|
Java 数据安全/隐私保护 Python
Python案例分享:如何实现文件的解压缩
Python案例分享:如何实现文件的解压缩
37 8
|
10天前
|
存储 缓存 安全
Python案例分享:如何实现文件的上传下载
Python案例分享:如何实现文件的上传下载
48 6
|
17天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
|
3天前
|
存储 数据挖掘 测试技术
Python接口自动化中操作Excel文件的技术方法
通过上述方法和库,Python接口自动化中的Excel操作变得既简单又高效,有助于提升自动化测试的整体质量和效率。
11 0
|
10天前
|
Linux 开发者 Python
从Windows到Linux,Python系统调用如何让代码飞翔🚀
【9月更文挑战第10天】在编程领域,跨越不同操作系统的障碍是常见挑战。Python凭借其“编写一次,到处运行”的理念,显著简化了这一过程。通过os、subprocess、shutil等标准库模块,Python提供了统一的接口,自动处理底层差异,使代码在Windows和Linux上无缝运行。例如,`open`函数在不同系统中以相同方式操作文件,而`subprocess`模块则能一致地执行系统命令。此外,第三方库如psutil进一步增强了跨平台能力,使开发者能够轻松编写高效且易维护的代码。借助Python的强大系统调用功能,跨平台编程变得简单高效。
13 0
|
22天前
|
TensorFlow 算法框架/工具 C++
Python exe文件打包神器-Nuitka!
Python exe文件打包神器-Nuitka!
|
4月前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
1194 0
|
4月前
|
关系型数据库 MySQL Linux
卸载、下载、安装mysql(Linux系统centos7)
卸载、下载、安装mysql(Linux系统centos7)
196 0