背景
前面已经优化过了发布脚本,但是用了一段时候发现,还是会有因为人为的原因,发生输入错误,导致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 ,如需转载请自行联系原作者