Windows和Linux使用WinSCP脚本(备份)自动数据同步(好文章!!有例子!!)

一、样例(如遇到权限问题请使用管理员身份运行.bat文件)

先在windows上安装winscp软件,版本随意。 

1.全量复制:

bak_all_override.txt

option echo off
option transfer binary
open sftp://root:123456@10.0.3.10:22
cd /usr/local/proj/proj_web
put C:\Users\abc\dist\*
exit

uploadbak_all_override.bat其中%~dp0 是.bat文件所在路径

@echo off
set filepath=%~dp0

cd C:\Program Files (x86)\WinSCP
winscp /script=%filepath%\bak_all_override.txt /log=%filepath%\log.txt

pause

2.增量复制:

bak_update.txt

option echo off
option transfer binary
open sftp://root:123456@10.0.3.10:22
synchronize remote C:\Users\abc\dist /usr/local/proj/proj_web
exit

uploadbak_update.bat其中%~dp0 是.bat文件所在路径

@echo off
set filepath=%~dp0

cd C:\Program Files (x86)\WinSCP
winscp /script=%filepath%\bak_update.txt /log=%filepath%\log.txt

pause

 

二、原文(原文语法有问题,仅供参考)

写在前面:
本笔记适用于windows和linux之间数据备份。
使用以下脚本前提是windows已将安装了WinSCP程序

  • 脚本文件script.txt
    option echo off
    option transfer binary
    open sftp://username:password@ip:port
    ::cd /backup/
    ::put E:\app (简单上传文件命令)
    synchronize remote E:\app\back /backup/back (同步命令,比对文件信息,增量同步)
    exit
  • 调用脚本文件run.bat
    @echo off
    cd C:\Program Files (x86)\WinSCP
    C:
    winscp /script=script.txt /ini=WinSCP.ini /log=log.txt
  • 放入计划任务执行
    将run.bat放入计划任务中,按业务时间执行即可

 

 原文参考自(本文有内容新增样例,且亲测):https://blog.51cto.com/iceblock/2376352

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值