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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: скрипт на Bash  (Прочитано 450 раз)

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

Оффлайн dantecyk

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
скрипт на Bash
« : 13 Ноябрь 2013, 10:34:59 »
Здравствуйте, форумчане!

Помогите пожалуйста написать скрипт. Задание такое:
На стандартный ввод вашего сценария поступает файл субтитров к видеоролику в следующем формате:
num
HH:MM:SS,SSS--> HH:MM:SS,SSS
text line 1
text line 2
. . .
Здесь num - номер блока, НН:MM:SS,SSS - начало и конец отображения подписи (text lines) к кадру. Каждый такой блок описывает подпись к очередной группе кадров. Эти блоки разделены пустыми строками. Сценарий должен скорректировать нумерацию блоков следующим образом. Два соседних блока должны иметь номера, отличающиеся на 1. Если очередной блок имеет более раннюю временную метку, он отбрасывается.
Пример:
$ cat cats.srt
144
00:16:12,90 --> 00:16:15,360
Я знаю кошку мягкую,

148
00:16:17,600 --> 00:16:19,680
Чье имя Дженни в точку,

143
00:15:47,960 --> 00:15:49,720
"Кому этот приз?"

144
00:16:22,280 --> 00:16:24,640
она как леопард ряба,

$ ./myscript.sh <cats.srt

144
00:16:12,920 --> 00:16:15,360
Я знаю кошку мягкую,

145
00:16:17,600 -- > 00:16:19,680
Чье имя Дженни в точку,

146
00:16:22,280 --> 00:16:24,640
Она как леопард ряба,



Буду очень благодарен за помощь. Спасибо за внимание.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: скрипт на Bash
« Ответ #1 : 13 Ноябрь 2013, 11:03:49 »
ТС, у Вас
первичные номера:
144, 148, 143, 144.
После обработки (до -> после):
144->144, 148->145, 143-> нет, 144->146.
Объясните преобразования для каждого номера, чтобы было ясно, что Вы хотите.

Оффлайн ArcFi

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: скрипт на Bash
« Ответ #2 : 13 Ноябрь 2013, 11:13:54 »

Оффлайн dantecyk

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: скрипт на Bash
« Ответ #3 : 26 Ноябрь 2013, 10:46:09 »
Изучаем:
http://rus-linux.net/MyLDP/BOOKS/abs-guide/flat/abs-book.html

Либо 500 руб.
ТС, у Вас
первичные номера:
144, 148, 143, 144.
После обработки (до -> после):
144->144, 148->145, 143-> нет, 144->146.

Это типа примера, препод упростил мне задания.
Нужно самому создать файл, с расширением .srt и там с 1-n блоки создать субтитры. А сортировку он сказал сделать по времени. Если последующий блок субтитров имеет более ранее время, то его отбросить и выводить следующий блок. Т.е сортировать чисто по времени блоки все должны идти по порядку. Ну вот, как то так.
Объясните преобразования для каждого номера, чтобы было ясно, что Вы хотите.

 

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