Диалоговое окно индикатора прогресса

Используйте параметр --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Пример диалогового окна индикатора прогресса\