Shell脚本模板

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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# 打印帮助信息
usage() {
cat >&1 <<-EOF

请使用: $0 <option>

可使用的参数 <option> 包括:

install 安装
uninstall 卸载
update 检查更新
help 查看脚本使用说明
EOF

exit $
}
# 检查是否已安装
is_installed(){
echo "检查是否已安装..."
# return 0表示已安装,1表示未安装
return 0
}

# 安装检查
installed_check() {
if is_installed; then
cat >&1 <<-EOF
检测到你已安装......
EOF
while true
do
cat >&1 <<-'EOF'
请选择你希望的操作:
(1) 覆盖安装
(2) 重新配置
(3) 检查更新
(4) 查看配置
(5) 完全卸载
(6) 退出脚本
EOF
read -p "(默认: 1) 请选择 [1~6]: " sel
[ -z "$sel" ] && sel=1

case $sel in
1)
echo "开始覆盖..."
# return 0 之后会继续执行下面的函数
return 0
;;
2)
echo "重新配置..."
;;
3)
echo "检查更新..."
do_update
;;
4)
echo "查看配置.."
do_update
;;
5)
echo "完全卸载.."
do_uninstall
;;
6)
echo "退出脚本.."
;;
*)
echo "输入有误, 请输入有效数字 1~6!"
continue
;;
esac
exit 0
done
fi
}
# 开始安装
install_app(){
echo "开始安装....."
}

# 安装命令
do_install(){
# 检查root权限
check_root
# 检查是否已安装
installed_check
# 安装
install_app

cat >&1 <<-EOF
恭喜! 服务端安装成功。
更多使用说明: ${0} help

如果这个脚本帮到了你,你可以请作者喝瓶可乐:
https://blog.csdn.net/junmoxi/
EOF
}
do_uninstall(){
echo "开始卸载....."
}
do_update(){
echo "开始更新....."
}

# 程序进入后的执行函数
action=${1:-"install"}
case "$action" in
install|uninstall|update)
do_${action}
;;
help)
usage 0
;;
*)
usage 1
;;
esac
-------------本文结束感谢您的阅读-------------