Bash не то, что плохо для этой проблемы. Просто необходимо использовать очень мощное, но недогруженный date
команда.
for i in {1..10}; do
hrmin=$(date -u -d@$(($i * 10 * 60)) +"%H:%M")
outfile=${hrmin/:/-}.mp4
ffmpeg -i video.mp4 -ss ${hrmin}:00 -t 00:10:00 -c copy ${outfile}
done
date
Объясненная командаdate
с a -d
флаги позволяют Вам устанавливать, какую дату Вы хотите отображенный (вместо текущей даты и время, которое является значением по умолчанию). В этом случае я устанавливаю его на время UNIX путем предварительного ожидания @
символ перед целым числом. Целое число в этом случае является временем в десятиминутных инкрементах (вычисленный Bash встроенный калькулятор: $((...))
).
+
символ говорит date
то, что требуется указать формат для отображения результатов. В нашем случае мы заботимся только о часе (%H
) и минуты (%M
).
И наконец, -u
должен отобразиться как время UTC вместо локального. Это важно в этом случае, потому что мы указали время как UTC, когда мы дали ему время UNIX (время UNIX всегда как UTC). Числа, скорее всего, не запустились бы от 0, если бы Вы не указывали -u
.
date
команда дала нам, в чем мы нуждались. Но двоеточия в имени файла могли бы быть проблематичными/нестандартными. Так, мы занимаем место ':' для '-'. Это может быть сделано sed
или cut
или tr
команда, но потому что это - такая простая задача, почему порождают новая подоболочка, когда Bash может сделать это?
Здесь мы используем замену простого выражения Bash. Чтобы сделать это, переменная должна содержаться в фигурных скобках (${hrmin}
) и затем используйте стандартную нотацию наклонной черты вправо. Первая строка после первой наклонной черты является шаблоном поиска. Вторая строка после второй наклонной черты является заменой.
Подстановка переменных Bash и больше могут быть найдены по http://tldp.org/LDP/abs/html/parameter-substitution.html.
До SMBPASSWD
, вы должны создать пользователь в Linux с USERADD
, а затем добавить пользователя в правильные группы с помощью USERMOD
Добавление пользователя в группу (ы) Можно сделать одновременно при создании пользователя с USERADD