做了个sftp上传的简单bat脚本,代码如下:
@rem 用vb脚本取昨天
for /f %%a in ('cscript //nologo yester.vbs') do set yesterday=%%a
cd D:/EC/data
Echo cd /whq/ec >sftp.ini
Echo mput %yesterday%.rar >>sftp.ini
Echo exit >>sftp.ini
@rem 注释:需要安装putty的psftp.exe,并设置环境变量,网址http://www.putty.org/
echo y | psftp huangyunfei@10.204.205.251 -P 2221 -pw Asd12345. -b sftp.ini
del sftp.ini /q
d = date() - 1
wscript.echo year(d) * 10000 + month(d) * 100 + day(d)
上传成功后,psftp执行exit时总是卡住,只能强行终止脚本运行。
设置计划任务后,发现在计划任务中执行,总是没有效果,哪怕是最简单的写临时文件的操作,都不执行。
查百度,可能原因有:
1、权限不足
2、初始路径不对
...
设置权限为最高权限运行,结果依旧;
设置起始于路径后,可以运行。
分析:
可能是上次脚本执行失败,起始路径被修改,必须指定起始路径才能正常运行。
检查发现:原来另外一个可以正常结束的脚本,也设置了起始路径。