使用 --progress 选项。 TeliuTe teliute@163.com 2010 tuhaihe 1132321739qq@gmail.com 2012 进度框

使用 --progress 选项创建一个进度对话框。

Zenity 从标准输入一行行读取数据。如果某一行以 # 开头,进度框里的文本会被那一行上的文本替换,如果某一行只是一个数字,数字会被换成进度条的百分比。

进度框支持以下选项:

<cmd>--text</cmd>=<var>文本</var>

指定显示在进度框里的文本。

<cmd>--percentage</cmd>=<var>百分比</var>

指定进度框开始时的百分比设定。

<cmd>--auto-close</cmd>

当达到 100% 时自动关闭对话框。

<cmd>--pulsate</cmd>

指定进度条跳动,直到从标准输入读到一个 EOF 文件结束符。

下面的脚本示范了如何创建一个进度对话框:

#!/bin/sh ( echo "10" ; sleep 1 echo "# 更新邮件日志" ; sleep 1 echo "20" ; sleep 1 echo "# 复位定时计划任务" ; sleep 1 echo "50" ; sleep 1 echo "该行会被忽略" ; sleep 1 echo "75" ; sleep 1 echo "# 重启系统" ; sleep 1 echo "100" ; sleep 1 ) | zenity --progress \ --title="更新系统日志" \ --text="扫描邮件日志..." \ --percentage=0 if [ "$?" = -1 ] ; then zenity --error \ --text="更新被取消。" fi
进度框范例 Zenity 进度对话框范例