如何自动定期将文件从Windows机器上传到unix服务器?

时间:2010-08-03 10:37:14

标签: java unix shell ftp

我的Windows机器上有2个csv文件,我想每小时传输到一个unix服务器(因为这两个文件每30分钟更新一次)。

所以我在网上搜索,我发现了这种可能性:使用批处理和任务调度程序将文件从Windows ftp到unix。

我想知道是否可以使用cron作业或使用java计时器从unix服务器执行此操作,而不是从Windows计算机执行此操作,以及是否有其他更简单的解决方案。

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

您可能遇到的主要问题是允许Unix机器访问Windows文件。

您没有指定使用何种网络配置以及它的Windows版本,因为某些更高版本提供跨平台文件共享的工具。

在最坏的情况下,您可以在Windows计算机上设置FTP(或SFTP)服务器,共享您将放置文件的特定目录,然后在UNIX上编写将从中下载文件的脚本Windows机器。对此的一种变体是在Windows机器上安装Web服务器,并让unix上的脚本为该文件发出HTTP请求。

答案 1 :(得分:0)

您可以安装类似http://www.aprelium.com/abyssws/

的网络服务器

它似乎是免费的,应该不那么难以设置。然后将您的文件放在htdocs文件夹中并配置您的Vista防火墙,让端口80上的请求通过。

然后您可以通过

访问您的文件
  

http://IPofYourWindowsComputer/yourfile.zip

如果要从本地网络外部访问Windows计算机,则必须设置路由器以将端口80转发到Windows计算机。否则,来自外部的机器将被路由器阻止。

PS:Samba(SMB)只能在同一个局域网内运行。如果你是,你可以创建一个共享文件夹并将文件放在那里,并通过smbclient或mount访问它们。

PPS:也许你的问题更好地放在@ http://serverfault.com