Автоматическое разделение большого mp3-файла с помощью FFmpeg на несколько файлов в разные моменты времени, представленные в текстовом файле

Вот как бы я это сделал:

$ date -d '2010-01-01 00:00:00' +%s
1262300400
$ date -d '2010-02-01 00:00:00' +%s
1264978800

$ for timestamp in {1262300400..1264978800..600}; do date -d @"$timestamp" '+%Y %m %d %H %M %S'; done | grep -Ev '[15]0 00$'

Что grep -Ev '[15]0 00$'делает:

  • grepсам выбирает строку (s ), соответствующую набору условий, описанных ее параметрами
  • -v:выберите строки, которые НЕ СООТВЕТСТВУЮТ параметрам
  • -E:заявляет, что шаблон, которому мы пытаемся сопоставить, является «расширенным регулярным выражением» (на самом деле здесь это НЕ требуется -моя ошибка)
  • [15]0 00$:регулярное выражение, говорящее: «выберите строки, оканчивающиеся на «1 или 5», затем «ноль», затем «пробел», затем «двойной ноль». Это соответствует строкам «10» и «50», которые удаляются благодаря -v, как описано выше.
2
24.07.2021, 22:00
0 ответов

Теги

Похожие вопросы