WinSCP软件同步本地或远程FTP的目录

安装时勾选添加到系统PATH。

有的时候我们会将远程FTP上的文件同步到本地,通过运行我们编写的程序对文件进行一系统的操作,会产生一些输出文件,然后再将处理后的文件同步到远程FTP上.
针对上述中的远程文件同步到本地或本地文件同步到远程FTP上的情况,我们可以利用Winscp软件,执行一系列的FTP命令.winscp软件可在网上下载.
winscp的命令范例:

# winscp.exe /console /script=sample.txt 

# Automatically answer all prompts negatively not to stall
# the script on errors
# option echo  on|off
option echo off

# option batch on|off|abort|continue
option batch on

# option confirm  on|off
option confirm off

# option transfer  binary|ascii|automatic
# option synchdelete  on|off
# option exclude clear | <mask>[;<mask2>…]
# option include clear | <mask>[;<mask2>…]

# open [ sftp|ftp|scp:// ][ <user> [ :password ] @ ] <host> [ :<port> ]
# open user:password@example.com
# Connect   FTP地址
open ftp://用户名:密码@ftp.chenpeng.info:21

# Change remote directory
# cd /home/user   如果同步到远程FTP时,可用此命令转到远程某个目录下.

# Change local directory
# set to Self’s working dir  设置需要同步到远程FTP的本地文件目录
lcd D:\Temp\Test_Ftp

# Force binary mode transfer
option transfer binary

# Download file to the local directory d:\
# get examplefile.txt d:\

# option synchdelete  on|off
option synchdelete off

# option include clear | <mask>[;<mask2>…]
# option include /2008-*-*/;/2009-*-*/;/2010-*-*/;/2011-*-*/;/2012-*-*/;/2013-*-*/

# synchronize local|remote|both [ <local directory> [ <remote directory> ] ]  从远程同步到本地用Local;从本地同步到远程用Remote
synchronize local  

# Disconnect
close

# Exit WinSCP
exit

将上述脚本存成sample.txt文件,然后通过winscp.exe /console /script=sample.txt  命令执行文件同步操作.
我们通常可以将此命令写到批处理.bat文件中,将要运行的用户编写的本地.ext程序也写入批处理文件中,然后放到控制面板->计划任务中,这样程序可定时执行,不需要用户再反复从远程取文件,执行程序,再上传到远程这一系列操作.

曾遇到问题: 客户提供的FTP账号,是ASCII码读到,导致用Winscp软件连接不上?
解决办法:打开Winscp软件,创建登录点,点击”Connection”,将红圈中的复选框打勾,点击”Save”.

WinSCP下载:http://winscp.net/eng/download.php 免费软件,官方有绿色版本。

一个用于将本地web目录的文件同步到远程ftp服务器的web目录的脚本:

winscp_sync.zip

参考:http://www.cnblogs.com/anny-1980/articles/1064167.html

About 智足者富

http://chenpeng.info

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>