linux脚本可视化,Linux社区-使用whiptail构建可视化脚本

本章技术点:

Linux社区-使用whiptail构建可视化脚本-1.jpg (11.85 KB, 下载次数: 0)

2018-10-14 19:47 上传

whiptail构建可视化脚本

什么是whiptail?

在Linux中可以使用命令来形成对话框,Linux命令行形成的对话框就是以代码的形式呈现。whiptail就是一个Linux可以形成对话框的命令行,本文就来介绍一下Linux使用whiptail形成对话框的体例。

一、简单的空话

经过最近的研究,翻了很多百度关于whiptail的文章,都是一些介绍用法,看的很是苦恼,脑袋爆炸,看了很多我真的没有找到一些有实例的,好比那个进度条.(!#@$%^@^%@^%&%&)!!! 表达的心情都在括号里! 还好有大牛的指点及教导,才有了今天的这一篇很简单的案例。 算是总结,也算是分享,~ 可以往下滑了~

首先确定用户的IP地址如下:

Linux社区-使用whiptail构建可视化脚本-2.jpg (14.4 KB, 下载次数: 0)

2018-10-14 19:47 上传

2、输入IP地址后判断IP地址反馈结果

Linux社区-使用whiptail构建可视化脚本-3.jpg (12.5 KB, 下载次数: 0)

2018-10-14 19:47 上传

3、IP地址正确后弹出是否需要安装nginx办事?

Linux社区-使用whiptail构建可视化脚本-4.jpg (13.52 KB, 下载次数: 0)

2018-10-14 19:47 上传

4、当用户选择确定安装后,进入进度条页面

Linux社区-使用whiptail构建可视化脚本-5.jpg (14.58 KB, 下载次数: 0)

2018-10-14 19:47 上传

5、进度条走完弹出安装成功并引导用户拜候页面

Linux社区-使用whiptail构建可视化脚本-6.jpg (13.98 KB, 下载次数: 0)

2018-10-14 19:47 上传

拜候页面测试结果

Linux社区-使用whiptail构建可视化脚本-7.jpg (59.37 KB, 下载次数: 0)

2018-10-14 19:47 上传

好像还少了个毛病判断 如下:

Linux社区-使用whiptail构建可视化脚本-8.jpg (15.05 KB, 下载次数: 0)

2018-10-14 19:47 上传

当用户输入判断不合法时,提示用户IP地址是毛病的

Linux社区-使用whiptail构建可视化脚本-9.jpg (14.57 KB, 下载次数: 0)

2018-10-14 19:47 上传

让用户选择再次输入IP地址还是退出

Linux社区-使用whiptail构建可视化脚本-10.jpg (12.71 KB, 下载次数: 0)

2018-10-14 19:47 上传

在这里我选择No

Linux社区-使用whiptail构建可视化脚本-11.jpg (12.18 KB, 下载次数: 0)

2018-10-14 19:47 上传

在这里就不在演示了

哦? 好像缺了代码? 没关系-贴上!

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

#!/bin/bashfunction Prompt(){(whiptail --title "IP地址更改(yes/no)" --yesno "您是否需要重新配置IP地址?" 10 60) if [ $? -eq 0 ];then ip_check else whiptail --title "Nginx提示!" --msgbox "欢迎您再次使用Nginx一键安装办事." 10 60 exit 1 fi}function ip_check(){IP=$(whiptail --title "IP地址设置" --inputbox "请您输入您的IP地址" 10 60 3>&1 1>&2 2>&3) VALID_CHECK=$(echo $IP|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}') if echo $IP|grep -E "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$" >/dev/null; then if [[ "$VALID_CHECK" == "yes" ]]; then whiptail --title "IP地址合法提示!" --msgbox "您输入的IP地址正确,点击OK进行下一步配置!." 10 60 fi else whiptail --title "IP地址毛病提示!" --msgbox "您输入的IP地址可能有误,请您检查后再次输入!." 10 60 Prompt fi}function install_nginx(){(whiptail --title "安装 Nginx?(yes/no)" --yesno "你是否需要安装Nginx?" 10 60) if [ $? -eq 0 ];then { sleep 1 echo 5 apt-get update >/dev/null sleep 1 echo 10 sudo apt-get -y install build-essential >/dev/null & sleep 1 echo 30 sudo apt-get -y install openssl libssl-dev >/dev/null & sleep 1 echo 50 sudo apt-get -y install libpcre3 libpcre3-dev >/dev/null & sleep 1 echo 70 sudo apt-get -y install zlib1g-dev >/dev/null & sleep 1 echo 90 wget -q http://nginx.org/download/nginx-1.12.2.tar.gz >/dev/null  sleep 1 echo 95 useradd -M -s /sbin/nologin nginx & tar zxf /root/nginx-1.12.2.tar.gz && cd /root/nginx-1.12.2/ &&  ./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module --user=nginx >/dev/null && make >/dev/null && make install >/dev/null /usr/local/nginx/sbin/nginx &>/dev/null & sleep 100 } | whiptail --gauge "正在安装Nginx,过程可能需要几分钟请稍后.........." 6 60 0 && whiptail --title "Nginx安装成功提示!!!" --msgbox "恭喜您Nginx安装成功,请您拜候:http://$IP:80, 感激使用~~~" 10 60  else whiptail --title "Nginx提示!!!" --msgbox "感激使用~~~" 10 60 exit 1 fi}function mail(){ ip_check install_nginx}mail

更多内容回复查看:

游客,如果您要查看本帖隐藏内容请回复

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值