• zenity命令显示图形框


    简介

    zenity是一个程序,它将显示图形框,并返回(在返回代码中,或标准输出中)用户的输入。这允许您从各种shell脚本中呈现信息,并向用户索取信息,实现图形化与用户交互

    语法格式

    zenity [参数]
    

    安装zenity

    Debian系统

    apt install -y zenity
    

    Redhat系统

    yum install -y zenity
    

    查看帮助

    zenity --help
    

    输出如下

    帮助选项:
      -h, --help                             显示帮助选项
      --help-all                             显示全部帮助选项
      --help-general                         显示常规选项
      --help-calendar                        显示日历选项
      --help-entry                           显示文字输入选项
      --help-error                           显示错误选项
      --help-info                            显示信息选项
      --help-file-selection                  显示文件选择选项
      --help-list                            显示列表选项
      --help-notification                    显示通知图标选项
      --help-progress                        显示进度选项
      --help-question                        显示问题选项
      --help-warning                         显示警告选项
      --help-scale                           显示范围选项
      --help-text-info                       显示文本信息选项
      --help-color-selection                 显示颜色选择选项
      --help-password                        显示口令对话框选项
      --help-forms                           显示表单对话框选项
      --help-misc                            显示杂类选项
      --help-gtk                             显示 GTK+ 选项
    
    应用程序选项:
      --calendar                             显示日历对话框
      --entry                                显示文本输入对话框
      --error                                显示错误对话框
      --info                                 显示信息对话框
      --file-selection                       显示文件选择对话框
      --list                                 显示列表对话框
      --notification                         显示通知
      --progress                             显示进度指示对话框
      --question                             显示问题对话框
      --warning                              显示警告对话框
      --scale                                显示范围对话框
      --text-info                            显示文本信息对话框
      --color-selection                      显示颜色选择对话框
      --password                             显示口令对话框
      --forms                                显示表单对话框
      --display=DISPLAY                      X display to use
    

    常用参数

    --calendar  快速日历对话框
    

    示例
    image
    输出为

    2022年02月27日
    
    --error  错误对话框
    

    示例

    zenity --error --title="错误" --text="发生了错误"
    --error # 输出为错误信息,对话框显示为红色
    --title # 自定义对话框标题
    --text  # 自定义错误信息
    

    输出如下
    image

    --entry 一般文本输入对话框
    

    示例

    zenity --entry --title="Input" --text="Please Input..."
    

    在弹出的对话框中输入信息则返回对应输入信息
    image
    输出如下
    image

    --info 信息对话框,同error只不过显示框为蓝色
    

    示例

    zenity --info
    

    输出如下
    image

    --question 问题对话框
    

    示例
    当用户点击确定执行某操作,取消则不操作,通过点击确定或者取消的返回值来确定

    
    qs=$(zenity --question --text="hello test")
    num=$?
    if [ ${num} -ne 0 ]
        then
            echo "用户取消"
        else
            echo "用户确定操作"
    fi
    

    运行脚本
    image
    点击是和否输出不同
    image

    --scale 缩放对话框
    

    示例

    zenity --scale
    

    image
    返回值为缩放框调整的值

    --password 密码框
    

    示例

    zenity --password
    

    输入为非明文显示的密码,输出为明文密码
    image

    --file-selection 文件选择
    

    示例

    zenity --file-selection
    

    弹出文件选择框,选择单个文件,返回为文件的完整路径
    image
    image

    案例

    使用一个案例来演示zenity在shell脚本中的应用
    脚本要求用户输入姓名并显示,选择文件名并显示

    #!/bin/bash
    #Time: 2022-02-25
    #Email:
    #File: zenity_test.sh
    #Project:
    #Description:
    #How Use:
    First_name=$(zenity --entry --title="姓" --text="请输入姓氏")
    Last_name=$(zenity --entry --title="请输入名字" --text="请输入名字")
    zenity --info --text="Hello ${First_name}${Last_name}"
    File_name=$(zenity --file-selection --title="选择文件")
    zenity --info --text="你选择的文件是${File_name}"
    
  • 相关阅读:
    Fleury算法
    2012 MultiUniversity Training Contest 2
    高斯若尔当消元法(线性代数)
    hdu4307(最小割)
    hdu4305(生成树计数)
    hdu4318(最短路)
    hdu4309(网络流)
    hdu4313(生成树)
    生成树计数
    MYSQL 远程登录及常用命令
  • 原文地址:https://www.cnblogs.com/minseo/p/15937381.html
Copyright © 2020-2023  润新知