背景
新入职的公司是个电商公司,每天要更新跟多产品信息,所以文件的更新速度非常快,但是入职后发现原有的发布脚本很难使用,经常因为输入错误,导致发布失败,很影响工作效率。
思路
1,QA 会把新文件上传到本地src服务器,项目的存储位置完全和线上一样,所以要保证,每次QA上传之前,项目文件夹为空,只保留目录树
2,由于项目众多选用for 循环嵌套case 语句,来做主程序,这样不管 ,当天要更新什么项目,都不需要判断,直接输入所需要的更新的项目号,就可以update
3,每次推送结束后,清空文件夹,并显示 更新的文件,和文件数方便与QA对照文件是否相同
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#!/bin/bash echo -n -e "1.project1 2.project2 3.project3\n"
project= "Please enter the project number:"
read -p "$project" a b c
for what in $a $b $c
do case $what in
1) echo “you select number1”
rsync
;;
2) echo "you select number2"
rsync
;;
3) echo "you select number3"
rsync
;;
*) echo "you do not select a number"
;;
esac done find /path/to/forder/ - type f | wc -l
find /path/to/forder/ - type f - exec rm {} \;
|
这只是个方法,代码写的很粗糙,但是比起之前全部用if 语句写的发布脚本,要好很多,不需要人来做判断,仅仅输入所要更新的项目号 就可以了
本文转自wks9751CTO博客,原文链接:http://blog.51cto.com/wks97/1609067 ,如需转载请自行联系原作者