Диалоговое окно хода выполнения

Используйте параметр --progress, чтобы создать диалоговое окно хода выполнения.

Zenity считывает данные из стандартного ввода строка за строкой. Если строка начинается с #, то текст, следующий за этим префиксом, размещается в диалоговом окне. Если строка содержит только число, то индикатор хода выполнения устанавливается на этот процент выполнения.

Диалоговое окно индикатора хода выполнения поддерживает следующие параметры:

--text=текст

Указывает текст, который будет изображён в диалоговом окне.

--percentage=процент

Указывает начальное состояние индикатора хода выполнения.

--auto-close

Диалоговое окно закрывается, когда процент выполнения достигает 100%.

--pulsate

Указывает, что индикатор хода выполнения пульсирует до тех пор, пока из стандартного ввода не будет прочитан символ конца файла EOF.

Следующий сценарий является примером того, как можно создавать диалоговое окно индикатора хода выполнения:

        #!/bin/sh
        (
        echo "10" ; sleep 1
        echo "# Обновление журнала почты" ; sleep 1
        echo "20" ; sleep 1
        echo "# Сброс задачи cron" ; 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

      

Рисунок 9Пример диалогового окна индикатора хода выполнения