![通过 FTP 将文件夹从 Windows 服务器同步到 Ubuntu 服务器](https://linux22.com/image/577014/%E9%80%9A%E8%BF%87%20FTP%20%E5%B0%86%E6%96%87%E4%BB%B6%E5%A4%B9%E4%BB%8E%20Windows%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%90%8C%E6%AD%A5%E5%88%B0%20Ubuntu%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我需要通过 FTP 自动将文件从 Windows 服务器传输到 Ubuntu 服务器。
我控制 ubuntu 服务器,除了通过 FTP 之外,没有其他方式访问 windows 服务器。
我需要一个 ubuntu 中的命令行 ftp-sync 程序,每 10 分钟检查一次 Windows 上的 ftp 文件夹,并将所有新文件下载到那里,然后在下载完成到 ubuntu 服务器后将其从 Windows 服务器中删除(或移动到其他目录,如“完成”)。
答案1
安装curlftps
:
apt-get install curlftpfs
~/.netrc
并在应运行此程序的用户的主目录中创建一个文件,文件内容如下:
machine ftp.example.com login yourusername password yourpassword
然后,编写如下脚本:
#!/bin/bash
mkdir -p /mnt/ftp
curlftpfs ftp.example.com/yourtargetdir /mnt/ftp
rsync -a --delete-after /mnt/ftp /yourlocaldir
fusermount -u /mnt/ftp
并将此脚本放入 cron 作业中,每十分钟运行一次:
*/10 * * * * /path/to/your/script.sh