我需要通过 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