我想从远程ubuntu服务器访问本地机器,因为我在这台机器上有多个文件,我想定期(每分钟)将它传送到服务器如何使用python
答案 0 :(得分:0)
根据您的本地计算机操作系统和网络设置,我建议如下:
根据文件大小,如果它是一个小副本,我会使用scp
(安全副本)。这是因为命令的简单性。
在大多数用例中,我会使用rsync
,因为它具有强大的功能,最重要的是能够处理失败的部分传输。它的工作原理是分析源和目的地之间的差异。它几乎可以在阳光下使用(覆盖,增量等)
请注意,在较长时间内在自动化脚本中使用这些命令时,您可能需要为远程计算机设置静态IP或DDNS。
要在Python脚本中运行shell命令,请使用pexpect
。它围绕原始的基于C expect
构建而且非常棒。我前几天使用它将文件夹从开发计算机远程传输到多个不同的Raspberry Pis。在这里查看文档:{{3}}
至于自动化,它实际上取决于你想要它的设置方式。如果您希望在要传输数据时调用负责传输数据的python脚本,可以查看crontab
。管理员非常熟悉谷歌这么容易。
或者,如果这是Python应用程序的一部分,您可以让应用程序在后台运行并在传输之间休眠(time.sleep()
或经过时间检查的功能)。如果您需要在同一个Python应用程序中执行其他操作,那么您可以将整个传输和睡眠部分粘贴到一个线程中(也可以在Python中轻松实现)。
我希望这会有所帮助,如果您需要详细说明,请与我们联系。