如何使用python将文件上传到tftp服务器?

时间:2017-10-19 10:21:56

标签: python tftp

请帮我用python将文件上传到TFTP服务器。 我使用的是tftpy模块。 在文档(http://tftpy.sourceforge.net/sphinx/index.html)中,它说

class tftpy.TftpClient.TftpClient(host, port, options={})
    upload(filename, input, packethook=None, timeout=5)

应该是什么文件名 - 它是远程服务器的路径,其中文件已经存在,或者它只是新文件名,服务器将使用默认目录中的文件名或新文件(文件名)的路径创建创造?

在上传之前,我是否必须在服务器中创建与输入文件同名的文件?

服务器将文件上传到的默认目录是什么?

如果是这样,服务器使用传递的名称(文件名)创建文件的另一种方式是什么?

我发送的是

tftp_obj.upload('something.txt','/home/username/project/example.txt')

我发送新文件名something.txt并不存在于服务器中 我收到错误消息:

raise TftpException, "Received ERR from server: " + str(pkt)
tftpy.TftpShared.TftpException: Received ERR from server: ERR packet: errorcode = 1
msg = File not found

如果我在root(/example.txt)下的远程服务器中创建文件(与输入文件名相同),我会得到相同的错误(假设它上传到的默认文件夹是root)并为filename参数提供路径< / p>

tftp_obj.upload('/example.txt','/home/username/project/example.txt')

当我仅传递现有文件名时出现相同的错误

tftp_obj.upload('example.txt','/home/username/project/example.txt')

请帮助举例。

1 个答案:

答案 0 :(得分:0)

TftpClient Documentation声音input是远程TFTP服务器上的上传文件的名称,The query cache is deprecated as of MySQL 5.7.20, and is removed in MySQL 8.0. 是您所在本地文件的数据源上传

  

上传(文件名,输入,packethook =无,超时= 5)

     

此方法启动tftp上传到配置的远程主机,上传传递的文件名。它从输入读取文件,该文件可以是类文件对象或本地文件的路径......