Shell的GUI编程
- dialog软件包是一个制作窗口的极好工具,利用ANSI转义控制码在文本环境中重新创建了标准Windows对话框。可以很方便地将这些对话框合并到shell脚本中来与脚本用户进行交互。
- dialog命令使用命令行参数确定生成的Windows小部件的类型。dialog软件包目前支持的小部件类型如下:
小部件 | 描述 |
---|---|
calendar | 提供一个可以在其中选择日期的日历 |
checklist | 显示多个项目,这些项目均可以被打开或关闭 |
form | 允许建立一个可以填写标签和文本字段的表单 |
fselect | 提供一个文件选择窗口以浏览文件 |
gauge | 显示一个说明完成百分比的仪表 |
infobox | 显示信息而不等待响应 |
inputbox | 显示单一的文本窗体框以输入文本 |
inputmenu | 提供一个可变及的菜单 |
menu | 显示一系列可供选择的选项 |
msgbox | 显示消息并要求用户选择OK按钮 |
pause | 显示一个说明指定暂停阶段状态的仪表 |
passwordbox | 显示一个可以隐藏输入文本的单一文本框 |
passwordform | 显示一个带标签和隐藏文本字段的表单 |
radialist | 提供一组菜单项,但是值可选择一个项目 |
tailbox | 利用tail命令在滚动的窗口中显示文件中的文本 |
tailboxbg | 与tailbox相同,但是需在背景模式下操作 |
texbox | 在滚动窗口中显示文件的内容 |
timebox | 提供一个用来选择时、分、秒的窗口 |
yesno | 提供一个含有Yes/No按钮的简单消息 |
- 要在命令行上具体指定一个特定的小部件,需要使用双破折号格式:dialog --widget parameters #parameters定义该小部件窗口的大小以及它所需的任何文本
- 每个对话框小部件均以两种形式提供输出:
1. 使用STDERR:`dialog --inputbox "Enter your age :" 10