«

»

从网上自动下载备份文件的批处理

ftp 脚本 批处理我的WordPress博客一直使用BackUpWordPress这个插件来做备份。然而前几天登录之后,发现某个日期之后没有产生新的备份文件。重启服务器之后才恢复正常,看来问题是出在服务器上。虽然麻烦些,回头有时间的话在操作系统级别上做个备份脚本,应该能减轻些对备份插件的依赖。目前更紧迫的工作是在自已工作用机上写个计划任务,定时从远端机拖下来备份文件,保存到本地。

可能有些FTP工具能做到自动定时下载文件,但用系统的FTP命令写批处理脚本来实现通用性会更好一些。本人工作用机是win7 64位版,系统自带的FTP命令一直工作不正常,原因是防火墙的配置有问题。以前没有关注,只在需要用FTP时关闭防火墙,用完后再打开。现在得认真解决一下这个问题了。

打开Win7系统防火墙查看规则,发现很有可能是专用网络与公用网络的问题。以前将FTP加入过防火墙的例外规则,但win7把多网卡系统分成专用和公用网络,公用网络受限更严格。FTP应用程序的例外规则有udp与tcp,以及公用和专用网络的区分。在公用网络规则中去掉对FTP应用的阻止后,FTP连接外网工作正常了。

然后是FTP脚本,FTP的-s参数能够指定一个命令文件,但由于我们需要动态产生需要获取的文件名,所以还是在批处理中用echo重定向先生成一个FTP命令文件,再用ftp -s执行它。批处理脚本如下:

可以看到,批处理中用date命令产生了当天的日期串。然后FTP登录成功之后,设为bin模式,开启hash显示,然后切换到正确目录,把备份文件下载到本地。

最后一步,就是配置个Windows的计划任务,定时执行FTP批处理,把文件取回本地。在计划任务中建立个基本任务,每天执行,时间设定为中午的1:30左右,此时本人机器一般处在开机状态。在设置时需注意的是,在执行程序的“开始位置”一项,要填入批处理文件所在的位置。比如填入绝对路径象“c:\tmp”之类,否则批处理可能无法正确执行。

在WordPress里,插件设为每天早晚各备份一次,这样在中午时执行这个定时任务,mget加文件通配符能取回唯一的备份文件。

1 星2 星3 星4 星5 星 (尚无评分)
Loading...Loading...

相关文章

从Windows命令行获得日期格式的方法 很多人习惯了Linux/Unix强大的Shell脚本命令,那么一个Linux脚本能够无缝的迁移到Windows下吗?恐怕还真...
Windows 7下测试网络连通性并记录日志的vbs脚本 经常调试网络的人都会知道,网络通或不通都好处理,但是碰到网络时通时断的情况却颇为头疼。前段时间自...
小巧好用的单文件ftp服务器baby ftp server 很多时候两台机子需要临时性的传输文件,这时候一个小巧好用的ftp服务器就能派上用场。baby ftp server...
Python用ftp发送文件的小程序 做一个中间业务项目,分成开发,测试和生产三套环境。先开发,然后部署至测试,最后再上生产。若中间有...
Windows中启动停止脚本及tasklist,taskkill,start,... 用C#写过几个调用tuxedo的命令行程序用作数据库之间的转发,主程序只有两个,用传入的命令行参数实现多...
命令行方式禁用启用计算机上设备的一种方法 DevCon命令是一个Windows XP以上系统的实用工具,命令行方式调用。使用 DevCon,您可以启用、禁用、重新...
批处理程序中的命令如何异步执行 最近回去聊天室玩,以前写的一个iChat聊天室的自动挂机程序又派上了用场,sngWebBrowser是通过双击列表...
Linux与Windows的距离 这几天因为要重装系统,惦记起硬盘上保留着的5个G的Linux分区,便到网上找找这些天流行些啥子Linux版本...

发表评论

电子邮件地址不会被公开。