开发过程中,大家都知道,很多公司都是使用跳板机来登录开发机,甚至开发机还禁用了ftp服务,这种情况下,本地同步开发机上的代码就成了一个问题。
下面讲解一个解决方案,就是通过脚本,借助nc命令来解决。
服务器运行脚本(back.sh)
#!/bin/bash #!/bin/bash read -p "please enter your code dir path:" path if [ ! -d "/tmp/.code_bak" ];then mkdir /tmp/.code_bak fi ori=$(pwd) cd $path/../ target=$(basename $path) cp -r $target /tmp/.code_bak/$target cd $ori tar -zcvf code.tar.gz /tmp/.code_bak/$target # 172.21.23.13 本地机IP,8222 指定未使用的本地机端口 nc 172.21.23.13 8222 < code.tar.gz rm -rf code.tar.gz rm -rf /tmp/.code_bak echo 'ok'
本地运行命令
nc -l 8222> code.tar.gz // 将服务器代码压缩文件下载下来
本地运行脚本(sync.sh)
#!/bin/bash # 需要同步的本地代码根路径 read -p "please enter your path:" path tar zxvf code.tar.gz if [ ! -d "$path" ];then mkdir -p $path fi cp -r tmp/.code_bak/* $path rm -rf code.tar.gz rm -rf tmp echo 'ok'