选项 | 描述 |
--add-widged | 除非按Esc或Cancel键,否则继续进入下一个对话框 |
--aspect ratio | 指定窗口宽度/高度的纵横比 |
--backtitle title | 指定在屏幕顶部、背景上显示的标题 |
--begin x y | 指定窗口左上角的起始位置 |
--cancel-label label | 为 Cancel 按钮指定一个可供选择的标签 |
--clear | 使用对话框默认背景色清除显示 |
--colors | 允许在对话框文本中嵌入 ANSI 颜色代码 |
--cr-wrap | 允许在对话框文本中加入换行符,强制换行 |
--create-rc file | 转储样本配置文件至指定文件 |
--defaultno | 将 yes/no 对话框默认值设置为 NO |
--default-item string | 设置检查列表、表单或菜单对话框的默认项目 |
--exit-label lable | 为 Exit 按钮指定可供选择的标签 |
--help | 显示 dialog 命令的帮助信息 |
--help-button | 在 OK 和 Cancel 按钮之后显示 help 按钮 |
--help-label label | 为 help 按钮指定可供选择的标签 |
--help-status | 在 help 按钮中的帮助信息被选中后,记录下检查列表、单选框列表或表单信息 |
--ignore | 忽略 diglog 不能识别的选项 |
--input-fd fd | 除 STDIN 之外,指定其他可供选择的文件描述符 |
---insecure | 更改 password 小部件以在输入时以星号显示 |
--item-help | 在屏幕的底部,为检查列表、单选框列表、菜单中的每一个标签添加该标签的帮助 |
--keep-window | 不要清除屏幕上的旧小部件 |
--max-input size | 指定输入字符串的最大数,默认为2048 |
--nocancel | 禁止 cancel 按钮 |
--no-collapse | 在对话框文本中,不要将制表换行符转换为空格 |
--no-kill | 将 tailboxbg 对话框放在背景中,并禁止该进程的 SIGHUP |
--no-label label | 为 No 按钮指定一个可供选择的标签 |
--no-shadow | 不要为对话框窗口显示阴影 |
--ok-label label | 为 OK 按钮指定一个可供选择的标签 |
--output-fd fd | 除了 STDERR 之外,指定可供选择的输出文件描述符 |
--print-maxsize | 打印对话框窗口允许输出的最大尺寸 |
--print-size | 将每个对话框窗口的尺寸打印至输出 |
--print-version | 将对话框版本打印至输出 |
--separator-output | 无需引用,将 checklist 小部件的结果一次一行的输出 |
--separator-widget string | 指定一个字符串来隔离每个小部件的输出 |
--shadow | 绘制阴影至每一个窗口的右下方 |
--single-quoted | 需要时对检查列表输出使用单引用 |
--sleep sec | 在处理对话框窗口后延迟指定的秒数 |
--stderr | 将输出发送至 STDERR (默认行为) |
--stdout | 将输出发送至 STDOUT |
--tab-correct | 将换行符转换为空格 |
--tab-len n | 指定一个制表符所使用的空格数(默认值为8) |
--timeout sec | 指定在没有用户输入的情况下,用错误代码退出所需的秒数 |
--title title | 指定对话框的窗口名称 |
--trim | 删除对话框文本中字符串首部的空格和换行符 |
--visit-items | 为了把项目列表包含在内,而修改对话框窗口中的制表符 |
--yes-label label | 为 yes 按钮指定一个可供选择的标签 |
--extra-label label | 为 Extra 按钮指定可供选择的标签 |
--extra-button | 在 OK 和 Cancel 按钮之间,显示一个其他的按钮 |
--separator string | 指定一个字符串来隔离每个小部件的输出 |
[Bash shell] 纯文本查看 复制代码
#!/bin/bash
temp=`mktemp -t test.XXXXXX`
temp2=`mktemp -t test2.XXXXXX`
function diskspace {
df -k > $temp
dialog --textbox $temp 20 60
}
function whois {
whoami > $temp
dialog --textbox $temp 20 50
}
function memusage {
cat /proc/meminfo > $temp
dialog --textbox $temp 20 50
}
while [ 1 ]
do
dialog --menu "System Admin" 20 30 10 1 "Disk space" 2 "who is" 3 "memory usage" 0 "Exit" 2>$temp2
if [ $? -eq 1 ]
then
break
fi
selection=`cat $temp2`
case $selection in
1)
diskspace ;;
2)
whois ;;
3)
memusage ;;
0)
break ;;
*)
dialog --msgbox "Sorry, wrong selection" 10 30
esac
done
rm -f $temp 2> /dev/null
rm -f $temp2 2> /dev/null