运维开发网

CentOS7.3学习笔记总结(七十六)

运维开发网 https://www.qedev.com 2020-10-25 13:50 出处:51CTO 作者:知行知行
dialog命令在linux系统中使用方法

前面我们介绍了dialog的基本功能(请查阅《CentOS7.3学习笔记总结(七十五)-linux系统中的窗口制作工具dialog介绍》),今天我们来介绍怎么在linux系统的shell脚本中怎么使用dialog命令。

我们就利用以前的shell脚本(脚本在《CentOS7.3学习笔记总结(七十四)-在Linux中创建文本菜单》文章中)来使用dialog命令,我们先看看改造后的脚本内容:

[[email protected] ~]# cat dialog_shell.sh

#!/bin/bash

temp=$(mktemp -t test.XXXXXX)#建立暂存文件,用于存放磁盘空间信息或者内容存息,共dialog调用。

temp2=$(mktemp -t test2.XXXXXX) #建立暂存文件,用于存放dialog的menu菜单重定向STDERR来获得输出值。

function diskspace {#定义磁盘信息函数

        df -k > $temp

        dialog --textbox $temp 20 60

}

function memusage {#定义内存信息函数

        cat /proc/meminfo > $temp

        dialog --textbox $temp 20 50

}

 

while [ 1 ]

do

        dialog --menu "Dispaly Computer Info Menu" 20 30 10 1 "Display disk space" 2 "Display memory"  0 "Exit" 2> $temp2

#0、1、2 是系统保留的三个文件描述符,分别对应标准输入、标准输出、标准错误。

        if [ $? -eq 1 ]

#$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)

        then

                break#错误中断循环

        fi

        selection=$(cat $temp2)

        case $selection in

        1)

                diskspace ;;

        2)

                memusage ;;

        0)

                break ;;

        *)

                dialog --msgbox "Sorry, invalid selection" 10 30

        esac

done

rm -f $temp 2> /dev/null#删除暂存文件

rm -f $temp2 2> /dev/null#删除暂存文件

效果:

CentOS7.3学习笔记总结(七十六)

                                               

结果如下:

CentOS7.3学习笔记总结(七十六)

鼠标点击退出,回到程序首页,选择2,点击确认:

CentOS7.3学习笔记总结(七十六)

点击退出,回到程序首页,选择0,点击确认,程序退出。这就是dialog命令在shell脚本中的简单应用,仅供参考。

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号