ftp、sftp利用bat脚本自动下载以及上传文件

一、ftp利用bat自动上传下载文件

 首先,先打开cmd,看下ftp命令是否是开通了的,如果提示ftp不是支持的命令,则需要自己去控制面板-程序以及功能-打开ftp功能。然后就是先自己用cmd命令,进行一次ftp的登入以及get put 文件操作。open 服务器ip  依次输入用户名 密码 ,然后就可以进入到对方服务器的相关目录 ,进行get put操作。

ftp>open 10.10.10.10

ftp>name

ftp>password

ftp>get 1.txt

ftp>bye

 ftp更多命令可以查看(注明:转载)http://blog.csdn.net/u012467492/article/details/53693061

下一步,就是编写一个bat脚本 ,命名为 ftp脚本.bat

@echo off
 ftp -i -s:"ftp.txt"

 -i:关闭文件传输过程中的交互式提示, -s:filename 指定ftp命令的文本文件 ,这些可以通过 ftp --help来了解。双引

号的作用是若文件路径有特殊字符,则加上。若命名规范可以不加。把咱们的ftp命令放在ftp.txt中,注意不需要 ftp>,再

然后我们在控制面板中找到任务计划程序,把 ftp脚本.bat 设置每隔10分钟自动执行,整个就完成了。

二、sftp利用bat自动上传下载文件

 因为我们本机是不自带fstp命令的,所以我们需要下载相应的软件,我用的是psftp工具,在PUTTY官网www.putty.org

上就可以下载到PSFTP。下载安装之后,皆可以在cmd窗口打sftp命令了,照样我们先用cmd进行一次连接。

open 10.10.10.10

name

password

get 1.txt

bye

 sftp与ftp的命令大多是相同的,我们可以看到并没有什么太大的区别。接下来我们 输入 sftp --help,可以看到 -l 用户名,

-pw 密码 -b:filename 相应的sftp命令文件。我们按照上面的ftp的方式进行编写脚本。

@echo off
 psftp  -b "sftp.txt"

但是编写好之后,我们可以发现是错误的,它不会正确运行,会要求输入用户名和密码。所以我们需要在bat文件里,

就为sftp连接指定用户名密码 :psftp  10.10.10.10 -l name -pw mima -b "sftp.txt",这样bat文件就可以正确运行。

然后在指定每10分钟运行一次,就完成了。

三。实际过程中遇到了密码包含特殊字符 %

在本人自己编写sftp脚本时,遇到了一个密码包含特殊字符(%)的情况,经过查找相关资料 ,

转-http://www.bathome.net/thread-1224-1-1.html

,才发现bat有很多特殊字符,所以导致psftp  10.10.10.10 -l name -pw mima -b "sftp.txt"这个命令可以在

cmd中运行,但在bat中却会报错,所以 将密码 sf2%ea2 改成 “sf2%%ea2”,脚本就正确运行了。



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值