高级脚本进阶—使用case的多功能选择性脚本
2024-09-01 05:43:21
应用场景:
在应用脚本决解实际的运维问题时,单功能脚本有很多的不同应用环境,如不同的运行环境,不同的系统版本等,这时,就需要对脚本的功能进行选择,一个脚本实现多功能多版本系统的维护,以减少沟通成本,而减少工作与沟通的复杂度是实际的工作中很有必要的,介绍一个简单的实现小框架,使用case流分离工具进行功能分离:
#!/bin/bash
Title=
oneSubtitle=
twoSubtitle=
threeSubtitle=
fourSubtitle=
fiveSubtitle=
sixSubtitle=
sevenSubtitle=
echo
cat <<EOF
DATE : `date +%Y-%m-%d-%T`
==========================================
$Title
==========================================
** )$oneSubtitle **
** )$twoSubtitle **
** )$threeSubtitle **
** )$fourSubtitle **
** )$fiveSubtitle **
** )$sixSubtitle **
** )$sevenSubtitle **
==========================================
EOF
read -p "Please choose [1-7]:" num
case $num in
)
function1
;;
)
function2
;;
)
function3
;;
)
function4
;;
)
function5
;;
)
function6
;;
)
function7
;;
*)
clear
./$
;;
esac
如上所示,小框架进行了七种不同场景的分离。
小结:
而在实际的应用脚本时,需要注意的有以下几点:
1.功能与功能之间的交叉。
2.根据实际的情况,选择不同的方式来进行。
3.考虑应用场景时,要考虑各种系统环境,提升代码的健壮性。
4.对相应命令的执行结果,不要一味的输入到/dev/null下,这样会错失很多的信息。
5.多测试,以实现功能的完备。
最新文章
- python学习道路(day10note)(线程,进程)
- Deep Learning 24:读论文“Batch-normalized Maxout Network in Network”——mnist错误率为0.24%
- 黑客攻防技术宝典Web实战篇(二)工具篇DVWA Web漏洞学习
- Android客户端的图形化拖放操作的设计实现
- [css]input text ie6/7 border兼容问题
- DOCTYPE 中xhtml 1.0和 html 4.01区别分析
- nodejs - 如何完全更新
- Spring学习8-Spring事务管理(注解式声明事务管理)
- Python快速建站系列-Part.One-组装开发环境
- CVE-2015-7547
- LOOPS(HDU 3853)
- IOS源码封装成.bundle和.a文件时,使用单例作为出口的写法!任何封装都建议使用这种方法作为出口
- TEST ON 平安夜
- javascript下动态this与动态绑定实例代码
- linux系统垃圾清理
- 2.从AbstractQueuedSynchronizer(AQS)说起(1)——独占模式的锁获取与释放
- cocos2d-x action执行完毕的回调
- Go接口interface
- Linux 学习 (九) 网络基础
- 我发起了一个 ILBC 的 子项目 ILBC Studio