监控远程文件变动同步到本地

场景

有时需要在远程服务器上编绎,编绎后在本地查看.比如有时在外面,手头只有一个windows平板,性能渣渣, 又要修改小程序.怎么办呢?可以这样: ssh远程服务器,远程neovim编辑,远程docker中的webpack自动打包,再将打包后变动文件发回本地.

步骤

原理

在本地电脑上开启sshd, 绑定到远程服务器一个端口。远程服务器文件变动后,利用rsync通过ssh推送变动到本地电脑。

前提

利用rsync同步文件, SSH方式, 需要将sshd配置为免密码登陆,比如证书.
需要将本地和远程都开启sshd, 且双方将public_key加入到对方的authroized_keys中.

创建ssh远程端口邦定

在本地linux端,比如msys2, cygwin, mobxterm中执行

ssh -Nf -R 8022:localhost:22 user@server
-N 不执行命令
-f 后台执行
-R 邦定远程8022端口到本地22端口;

测试是否邦定成功

ssh登陆远程服务器后

ssh -p 8022 localhost

建立监控变动并更新脚本

moniter.sh. 监控远程服务器,编绎后目录dist并同步到local机的project/dist目录下

#!/bin/bash
while true; do
	inotifywait -r -e modify dist
	rsync -a -e 'ssh -p 8022' dist/* localhost:project/dist
	echo @ `date` done!
done
    原文作者:jamsan_n
    原文地址: https://blog.csdn.net/jamsan_n/article/details/83411699
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞