Быстрое редактирование файла субтитров - PullRequest
1 голос
/ 26 июля 2011

Мне нравится GNU / Linux и написание сценариев bash для автоматизации моих задач.Но я новичок и у меня много проблем с этим.Итак, у меня есть файл субтитров в следующем формате (я польский, так что это польские субтитры):

  00:00:27:W zamierzchłych czasach|ziemia pokryta była lasami.
  00:00:31:Od wieków mieszkały|w nich duchy bogów.
  00:00:37:Człowiek żył w harmonii ze zwierzętami.

Я понимаю, что вы понимаете этот простой формат.Проблема в том, что в «файле фильма» перед началом фильма идет 1:15 введения.Я хочу добавить к каждой строке файла субтитров 1:15.Таким образом, пример должен выглядеть следующим образом:

  00:01:43:W zamierzchłych czasach|ziemia pokryta była lasami.
  00:01:46:Od wieków mieszkały|w nich duchy bogów.
  00:01:52:Człowiek żył w harmonii ze zwierzętami.

Не могли бы вы помочь мне написать этот скрипт?

Кстати, я польский, и я все еще изучаю английский.Поэтому, если вы не можете меня понять, напишите.

1 Ответ

1 голос
/ 26 июля 2011

Вот решение в awk - возможно, проще, чем bash для такого рода проблем:

#!/usr/bin/awk -f

BEGIN {
  FS=":"
}

{
  hr = $1
  min = $2
  sec = $3

  sec = sec + 15
  if (sec >= 60) {
    sec = sec - 60
    min = min + 1
  }

  min = min + 1
  if (min >= 60) {
    min = min - 60
    hr = hr + 1
  }

  printf "%02d:%02d:%02d:%s\n", hr, min, sec, $4 
}

Предложения по улучшению приветствуются!

...