当前位置: 首页 > news >正文

Linux软件下载菜单脚本

实现功能

提供图形化菜单界面

支持常见软件分类(lamp,lnmp)

新建menu.sh脚本
#!/binbashfunction menu(){
cat << EOF
----------------------------------------------
|*******Please Enter Your Choice:[1-4]*******|
----------------------------------------------
*    `echo -e "\033[35m 1)lamp install\033[0m"`
*    `echo -e "\033[35m 2)lnmp install\033[0m"`
*    `echo -e "\033[35m 3)quit\033[0m"`
*    `echo -e "\033[35m 4)return main menu\033[0m"`
EOF
}
function lamp_menu(){
cat << EOF
----------------------------------------------
|*******Please Enter Your Choice:[1-4]*******|
----------------------------------------------
*    `echo -e "\033[35m 1)http install\033[0m"`
*    `echo -e "\033[35m 2)mysql install\033[0m"`
*    `echo -e "\033[35m 3)php install\033[0m"`
*    `echo -e "\033[35m 4)return main menu\033[0m"`
EOF
read -p "####please input second_lamp optios[1-4]:" num2
expr $num2 + 1 &> /dev/null
if [ $? -ne 0  ]
thenecho "#############################"echo "waing !!!,input error "echo "please enter choose[1-4]:"echo "#############################"sleep 1
elseif [ $num2 -gt 4 ]thenecho "############################"echo "waing !!!,out df range"echo "please enter choose[1-4]:"echo "############################"sleep 1fi
fi
case $num2 in1)yum install httpd -y &> /dev/nullif (($?==0))thenecho "httpd安装成功"fisleep 2lamp_menu;;2)yum install mariadb-server -y &> /dev/nullif (($?==0))thenecho "mysql安装成功"fisleep 2lamp_menu;;3)yum install php* -y &> /dev/nullif (($?==0))thenecho "php安装成功"fisleep 2lamp_menu;;4)clearmenu;;*)clearechoecho -e "Wring!!!Please input aging choice:[1-4]"lamp_menu
esac
}
function lnmp_menu(){
cat << EOF
----------------------------------------------
|*******Please Enter Your Choice:[1-4]*******|
----------------------------------------------
*    `echo -e "\033[35m 1)nginx install\033[0m"`
*    `echo -e "\033[35m 2)mysql install\033[0m"`
*    `echo -e "\033[35m 3)php install\033[0m"`
*    `echo -e "\033[35m 4)return main menu\033[0m"`
EOF
read -p "####please input second_lamp optios[1-4]:" num2
expr $num2 + 1 &> /dev/null
if [ $? -ne 0 ]
thenecho "#############################"echo "waing !!!,input error "echo "please enter choose[1-4]:"echo "#############################"sleep 1
elseif [ $num2 -gt 4 ]thenecho "############################"echo "waing !!!,out df range"echo "please enter choose[1-4]:"echo "############################"sleep 1fi
fi
case $num2 in1)yum install nginx -y &> /dev/nullif (($?==0))thenecho "httpd安装成功"fisleep 2lnmp_menu;;2)yum install mariadb-server -y &> /dev/nullif (($?==0))thenecho "mysql安装成功"fisleep 2lnmp_menu;;3)yum install php* -y &> /dev/nullif (($?==0))thenecho "php安装成功"fisleep 2lnmp_menu;;4)clearmenu;;*)clearechoecho -e "Wring!!!Please input aging choice:[1-4]"lnmp_menu
esac
}clear
menu
while true
doread -p "###please enter your first_menu choice:[1-4]" num1expr $num1 + 1 &> /dev/nullif (($?>0))thenecho "-----------------------------"echo "|          waring!!!        |"echo "|please enter right choice! |"echo "-----------------------------"sleep 1elif (($num1>4))thenecho "-----------------------------"echo "|          waring!!!        |"echo "|       out of range! |"echo "-----------------------------"sleep 1elsecase $num1 in1)clearlamp_menu;;2)clearlnmp_menu;;3)clearbreak;;4)clearmenu;;*)clearecho -e "error!!please enter again choice:[1-4]"menuesacfi
done
脚本执行
bash menu.sh
执行结果

小结

本文介绍了一个基于Bash脚本的图形化菜单系统,用于自动化安装LAMP和LNMP环境。脚本包含三个主要功能:主菜单显示LAMP/LNMP安装选项,二级菜单提供具体组件(如HTTP/Nginx、MySQL、PHP)的安装选择。通过case语句处理用户输入,使用yum命令自动安装软件包,并包含输入验证和错误处理功能。执行方式为运行"bash menu.sh",该脚本为用户提供了便捷的服务器环境搭建工具,支持返回主菜单和退出功能。

http://www.xdnf.cn/news/1300033.html

相关文章:

  • 【数据分享】2014-2023年长江流域 (0.05度)5.5km分辨率的每小时日光诱导叶绿素荧光SIF数据
  • 【记录】Apache SeaTunnel 系统监控信息
  • 深度学习-卷积神经网络CNN-批量归一化 BatchNorm
  • PostgreSQL——触发器
  • 零基础-动手学深度学习-10.3. 注意力评分函数
  • 最新去水印小程序系统 前端+后端全套源码 多套模版 免授权(源码下载)
  • vue3,使用v-draggable拖动时卡顿的问题
  • 减重小知识
  • Linux 文件系统简介
  • OpenCV 形态学操作
  • GitHub 仓库代码上传指南
  • 开发避坑指南(26):Vue3 input输入框前置后 置元素解决方案
  • Mybatis学习笔记(三)
  • diffusers库学习--pipeline,模型,调度器的基础使用
  • springboot博客实战笔记02
  • C#WPF实战出真汁04--登录功能实现
  • C#WPF实战出真汁03--登录界面设计
  • 【React】hooks 中的闭包陷阱
  • 大数据项目_基于Python+hadopp的城市空气污染数据关联性可视化分析系统源码_基于机器学习的城市空气污染预测与分析系统的设计与实现
  • 04. study_ESP32配网库
  • 沈帅波出席茅台红缨子高粱节探讨产业赋能新模式
  • dkms安装nvidia驱动和多内核支持
  • B站 韩顺平 笔记 (Day 18)
  • 考研408《计算机组成原理》复习笔记,第五章(3)——CPU的【数据通路】
  • Encoder-Decoder Model编码器-解码器模型
  • 嵌入式第二十八天(程序与进程)
  • 百度智能云x中科大脑:「城市智能体」如何让城市更会思考
  • k8s+isulad 重装
  • 数据结构---链式结构二叉树
  • 4. 索引数据的增删改查