Рейтинг:2

Преобразование MKV в MP4 с помощью FFMPEG

флаг uz

Я использую следующую строку для преобразования

для ф в *.mkv; do ffmpeg -i "$f" -c:v copy -c:a aac -b:a 256k "${f%%mkv}mp4";&& rm "{$f}.mkv"; сделано

мне это нужно, чтобы также проверять подкаталоги, но я продолжаю получать ошибку токена или ошибку bash

также он не удаляет файлы mkv после завершения преобразования

как только я заработаю правильно, как мне сделать еще один шаг и сделать так, чтобы он автоматически запускался, скажем, один раз в день, чтобы конвертировать любые недавно добавленные файлы mkv.

Рейтинг:7
флаг us

ffmpeg -i "$f" -c:v copy -c:a aac -b:a 256k "${f%%mkv}mp4";&& rm "{$f}.mkv"; является синтаксической ошибкой - вы не можете иметь && после ;. Это должно быть просто ffmpeg -i "$f" -c:v copy -c:a aac -b:a 256k "${f%%mkv}mp4" && rm "{$f}.mkv";. Тогда ваш $f уже заканчивается в .mkv, Итак г.м. команда должна быть просто гм "$f".

Чтобы перейти в подкаталоги, используйте глобус:

шопт -с глобстар
для f в **/*.mkv; сделать ... сделано

Все сказано:

#! /бин/баш
шопт -с глобстар
для f в **/*.mkv
делать
  ffmpeg -i "$f" -c:v копировать -c:a aac -b:a 256k "${f%%mkv}mp4" &&
    гм "$f"
сделано

Чтобы запустить его по расписанию, см. Ежедневный запуск скрипта с помощью cronjob или же Как правильно установить таймер и службу systemd?.

флаг uz
Привет, спасибо за ответ, я рву на себе волосы, поэтому, если я хочу, чтобы он работал, скажем, все каталоги солнца или /storage2/, я просто добавляю это вместо ** перед mkv
флаг uz
Таким образом, в основном все подкаталоги в storage2/Series. Есть файлы mkv в
флаг uz
Когда я запускаю это, он говорит, что файл mkv не найден, он не ищет подкаталог
muru avatar
флаг us
@ playl01 Что именно ты запускал? Если вы хотите использовать его в `/storage2`, либо `cd`, либо замените `**/*.mkv` на `/storage2/**/*.mkv`.
флаг uz
**/*.mkv нет каталога отстойных файлов, поэтому все файлы mkv находятся в подкаталогах хранилища2
флаг uz
Привет, так что внутри серии. / У нас есть подпапки на 2 глубины, когда я запускаю приведенный выше скрипт, он говорит, что такого файла или прямого доступа нет.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.