在前端开发工作中,在打包完成后往往需要打包部署到测试环境,如果没有Devops环境,则需要手动远程部署到指定服务器下,前端人员有一定的学习成本,并且浪费时间,使用此脚本可以实现一键自动编译打包前端工程,并远程拷贝到指定服务器的指定目录。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/bash
# 执行打包命令
npm run build

# 获取当前时间作为time变量
time=$(date "+%Y%m%d-%H%M%S")

# 将远程服务器的原文件夹根据当前日期重命名作为备份
ssh root@xx.xxx.xx "mv /var/www/dist /var/www/dist-"${time}
# ssh root@xx.xxx.xx 'rm -rf /var/www/dist/*'

# 远程拷贝本地的dist文件夹到远程服务器的/var/www目录下
scp -r ./dist root@xx.xxx.xx:/var/www/

# 给远程服务器的dist目录赋读写权限
ssh root@xx.xxx.xx 'chmod +777 -R /var/www/dist/'