Skip to content
This repository was archived by the owner on May 23, 2022. It is now read-only.

terrywh/sync-dev

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sync-Dev

实时 SFTP 同步工具(单向):

  • 监听控本地目录文件变更,并通过 SFTP 同步到远端文件服务;
  • 完整覆盖同步支持;
  • 支持监听一次性监听本地多个路径并同步到远程对应路径;
  • 支持帐号密码、私钥连接登录方式;

可以用于在 本地编写代码,并将代码同步到远程 Linux 服务器调试运行等。

使用说明

  • 本工具支持两种使用配置使用方式:

    1. 命令行单个监听同步:

      sync-dev -l D:\\data\\htdocs -r wuhao:[email protected]:22/data/wuhao

      附加 -s 参数则立即进行完整同步,同步完成后退出(参考参数说明); 若不提供密码,例如 [email protected]/data/wuhao,则自动使用当前用户私钥进行连接登录(可用 HOME 环境变量覆盖用户路径,即:${HOME}/.ssh/id_rsa)

    2. 配置文件多个监听同步

      sync-dev -c sync.conf

      配置文件示例:sync.conf

  • Windows 系统可考虑使用下面脚本后台启动:

// sync-dev.js
var sh = new ActiveXObject('Wscript.Shell');
sh.Run('sync-dev.exe -c sync.conf', 0, false)
  • 使用私钥登录可考虑如下操作:

    1. 本机 ssh-keygen 生成密钥;
    2. 本机 ssh-copy-id [email protected] 建立远端公钥信任;
  • 注意:

    • 若在本地路径中使用相对路径,改路径相对于 “当前工作路径” 而非应用路径、或配置路径;
    • Windows 路径分隔符某些情况需要转义后使用;

配置说明

// 提供用户名密码登录远程服务器
{"local_path":"D:\\data\\htdocs","remote_host":"11.22.33.44","remote_port":22,"remote_path":"/data/wuhao","remote_user":"wuhao","remote_pass":"123456"}
// 使用当前用户及其私钥验证登陆远程服务器(默认端口 22)
{"local_path":"./test1","remote_host":"11.22.33.44","remote_path":"/data/test1"}
// 使用指定用户及当前用户私钥验证登陆远程服务器(默认端口 22)
{"local_path":"D:/data/test2","remote_host":"11.22.33.44","remote_path":"/data/test2","remote_user":"wuhao"}

// local_path  - 本地同步目录(相对路径)
// remote_host - 远端服务器地址
// remote_port - 远端服务器端口,可选,默认 22
// remote_user - 帐号,可选,若不提供帐号,则使用当前用户
// remote_pass - 密码,可选,若不提供密码,则使用当前账户的私钥验证登陆 ${HOME}/.ssh/id_rsa 私钥路径
// remote_path - 远端目标目录

命令帮助

  -c string
        同 -config
  -config string
        配置文件路径,使用配置文件可一次性定义多个监听同步
        (参考 sync.conf.example)
  -h    命令行帮助
  -help
        同 -h
  -l string
        同 -local
  -local string
        设置监听同步的本地目录
  -r string
        同 -remote
  -remote string
        远程同步目标,例如 "wuhao:[email protected]:22/data/syncdir"
  -s    同 -sync
  -sync
        进行一次完整同步并退出(无法与 \"-config\" 同时使用)
  -l    同 -log
  -log  日志输出重定向到指定的文件

About

实时 SFTP 同步工具(单向)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages