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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

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

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.059 секунд. Запросов: 25.