python中paramiko的sftp

2023-01-31 02:01:04 python sftp paramiko

from_transport(cls, t)

从一个开放的L(传输)创建一个SFTP客户端通道


close(self):

关闭SFTP会话和它的底层通道


def get_channel(self):

为该SFTP会话返回底层L(通道)对象。这样可以对类似设置通道超时有帮助


listdir(self, path='.'):

返回一个已给定的路径中包含文件或目录的列表。 它不包含特别的条目“.”“..”即使他们存在于文件夹中。该方法为了尽可能接近的映射os.listdir。对于一个完整的列表(SFTPAttributes)对象,可以查看(listdir_attr)。


listdir_attr(self, path='.'):

返回一个列表包含SFTPAttributes的对象对应给定目录中的文件,该列表无一定顺序。它不包含特别的条目“.”“..”即使他们存在于文件夹中。返回的L { SFTPAttributes }对象将分别有一个额外的字段:C { longname },它可能包含一个格式化的字符串的文件属性,在unix格式。这个字符串的内容可能会取决于SFTP服务器


open(self, filename, mode='r', bufsize=-1):

在远程服务器上打开一个文件.参数与内置函数file、open相同.他返回一个与一个普通的python文件对象非常接近的类文件对象.
mode 表明以扫描模式打开文件:r为只读,w为写(截取一个存在的文件) a为追加,r+ 为读/写,w+ 读/写(截取一个存在的文件),w+ 读/写入,a+为读/追加。Python C { ' b ' }标志被忽略,因为ssh将所有文件作为二进制。C { ' U ' }标识在一个兼容的方式里才支持。

自从1.5.2以来, ' x ' 标记表示操作应该只在创建一个不存在的文件时成功。这个没有直接映射到python的文件标记,但通常在posix称为C { O_EXCL }标识。
在默认情况下该文件将以标准的python风格缓冲,但是可以通过C { bufsize }参数改变。C { 0 }关掉
缓冲,C { 1 }使用行缓冲和任意数量大于1 ,(C { > 1 })使用特定的缓冲区大小。


remove(self, path):

删除一个给定路径的文件,至可以删除文件,对于删除文件夹,使用rmdir


rename(self, oldpath, newpath):

给文件或目录重命名


mkdir(self, path, mode=0777):

创建一个文件夹 以path命名,权限默认为0777(8进制)。在一些系统中,mode是忽略的。数字umask 值的第一个是掩码。


rmdir(self, path):

删除名字为path的文件夹

stat(self, path):

检索远程系统上的文件的信息。返回值是一个对象对应os.stat返回值的属性,除os.stat返回包含更少的字段。SFTP服务器可能返回尽可能多或者尽可能少想要的信息,那么结果可能相对于从服务器到服务器有所不同。不像 python C { stat }对象,结果可能不会被作为一个元组访问。这是由于作者的松弛因子      


lstat(self, path):

检索远程系统上的文件的信息,与stat不同的是没有符号链接(快捷方式)。


symlink(self, source, dest):
创建一个C {源}路径在C {目的地}的符号链接(快捷方式)。


chmod(self, path, mode):

改变文件权限模式。该权限在类unix系统与使用os.chomd相同。

chown(self, path, uid, gid):

改变文件的uid和gid。与os.chown函数相同。如果要改变的话必须传递两个参数才可以。

utime(self, path, times):
设置制定的路径中的文件的访问和修改的时候。如果path是None,文件的访问和修改时间设置为当前时间。否则,time必须是(atime, mtime)这种2元组的数字。


truncate(self, path, size):
改变制定路径中文件的大小。这通常用于扩展或缩小文件的大小,就像用于python文件对象的truncate()方法。


readlink(self, path):

返回一个符号链接(快捷方式)的目标。您可以使用symlink来创建他们。结果可以是一个绝对或相对路径名。


nORMalize(self, path):
返回规一个给定的路径的范化路径(在服务器上)。他可以像path一样用来快速解决符号链接或确定服务器正在考虑将“当前文件夹”(通过C {’。' }作为C {路径})


chdir(self, path):

改变当前SFTP会话所在的“文件夹”。由于SFTP并没有真正的一个当前工作目录的概念,这是paramiko模拟出来的。一旦你使用这个方法来设置工作目录,所有在SFTPClient对象上的操作都将是相对于该路径的。


getcwd(self):

为该SFTP会话返回以paramiko模拟出的当前工作目录,如果没有用chdir设置过则该方法返回 None


put(self, localpath, remotepath, callback=None):

复制一个本地文件 (localpath)到SFTP服务器命名为(remotepath)。任何由操作产生的错误都将被传递。这个方法主要是一个方便的方法。


get(self, remotepath, localpath, callback=None):

从SFTP服务器上赋值一个文件(remotepath)到本地(localpath)。任何由操作产生的错误都将被传递。这个方法主要是一个方便的方法。



相关文章