Форум русскоязычного сообщества Ubuntu


Автор Тема: Как показать процент исполнения внешней програмой?  (Прочитано 365 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Axa-Ru

  • Автор темы
  • Гость
Задача такая.
Есть аудио книги. Как правило, теги аудиофайлов в кодировке 1251. Книга состоит из множества файлов.
На python под ubuntu хочу написать интерфейс объединения mp3 файлов, конвертирования в ogg и записи тегов в utf8.
Конвертирую с помощью sox .
Теги записываю с помощью вызова программы vorbiscomment
Как из python отслеживать и показывать процесс исполнения?
Или, хотя бы, как перехватить вывод программы sox.
« Последнее редактирование: 10 Февраль 2016, 08:50:52 от Axa-Ru »

Оффлайн 3245

  • Любитель
  • *
  • Сообщений: 77
    • Просмотр профиля
Попробуйте почитать про zenity. Должно помочь.
Министерство параллельного контроля за перпендикулярным развитием.

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 5659
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
Или, хотя бы, как перехватить вывод программы sox.
В python наверное с помощью coprocess. A bash имеет утилитку tee, которая умеет дублировать вывод.
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Axa-Ru

  • Автор темы
  • Гость
3245,
Спасибо, zenity не катит. Есть более продвинутая YAD, но там тоже слабое взаимодействие с подпроцессами.

Пользователь решил продолжить мысль 10 Февраль 2016, 15:44:44:
Azure,
да, вы правы, я как вопрос то написал, так тоже к такому же выводу пришел: перехватывать вывод и парсить.
« Последнее редактирование: 10 Февраль 2016, 15:44:44 от Axa-Ru »

Оффлайн Laa-Laa

  • Любитель
  • *
  • Сообщений: 84
  • Это трудно объяснить, но сложно понять.
    • Просмотр профиля
    • http://any.mooo.com
За zenity заступиться хочу.

 for i in $(ls) ; do echo "#ынимание, идет обработка $i " ; rm $i ; sleep 1 ;  done | zenity --progress

zenity --progress --pulsate еще красивше будет.
« Последнее редактирование: 11 Февраль 2016, 06:01:58 от Laa-Laa »
Помогаю клоуну набрать 20к сообщений.
danger! (будугуруUbuntu пользователь под набледением.)

 

Страница сгенерирована за 0.057 секунд. Запросов: 24.