web代码发布脚本以及优化2.0

背景

前面已经优化过了发布脚本,但是用了一段时候发现,还是会有因为人为的原因,发生输入错误,导致update失败,所以今天的目的,就是要实现无脑更新,不要输入项目号,而是世界执行脚本,让程序去判断。

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#!/bin/bash
path1=/path/to/forder
path2=/path/to/forder1
PROJECT1 ()
{
        a=`find $path1 -type f | wc -l`
        echo $a
        if [[ $a -ge 1 ]];
        then
        return 1
        else
        echo "PROJECT1 files no exits"
 
        fi
 
}
PROJECT1
num1=$?
echo $num1
 
 
PROJECT2 ()
{
        a=`find $path2 -type f | wc -l`
        echo $a
        if [[ $a -ge 1 ]];then
        return 2
        else
        echo "PROJECT2 files no exits"
fi
}
PROJECT2
num2=$?
echo $num2
 
PROJECT3 ()
{
        a=`find $path2 -type f | wc -l` 1>/dev/null 2>&1
        if [[ $a -ge 1 ]]; then
        return 3
        else
        echo "PROJECT3 files no exits"
fi
}
PROJECT3
num3=$?
array=($num1 $num2 $num3)
for what in ${array[@]}
do
case $what  in
        1) echo "you doing rsync project1"
            ;;
        2) echo "you doing rsync project2"
            ;;
        3) echo "you doing rsync project3"
            ;;
        *) echo "you do not select a number"
            ;;
esac
done

剩下的就所需要对文件的对坐,编写到相应的选项里就可以了

重点:自定义函数,设置返回值,然后放到数组里,用for循环嵌套case语句进行执行















本文转自wks9751CTO博客,原文链接:http://blog.51cto.com/wks97/1609072 ,如需转载请自行联系原作者


上一篇:容器开启数据服务之旅系列(四):Kubernetes QoS 助力在线运用与大数据离线运用的带宽控制和磁盘控制


下一篇:交通银行优化IT服务体系 提升服务水平