Я пытаюсь создать сценарий, который просматривает папку и автоматически кодирует файлы, которые go, в эту папку с помощью ручного тормоза. Я хочу сделать это, выполняя мониторинг папки с помощью inotify, помещая новые дополнения в папку в список, а затем используя задание cron для их кодирования в одночасье. Однако при использовании в течение времени от l oop до l oop по списку ручник только кодирует первый файл, который существует, тогда сценарии переходят к l oop, не обрабатывая каждый файл в списке. Вот скрипт, который вызывает ручной тормоз:
#!/bin/bash
while IFS= read -r line
do
echo "$(basename "$line")"
HandBrakeCLI -Z "Very Fast 1080p30" -i "$line" -o "$line.m4v"
rm "$line"
done < list.txt
> list.txt
При тестировании l oop с простым эхом вместо HandBrakeCLI он работает нормально и распечатывает каждый файл, поэтому я понятия не имею, что не так.
Вот сценарии, которые отслеживают проблему, связанную с папками:
#!/bin/bash
if ! [ -f list.txt ]
then
touch list.txt
fi
inotifywait -m -e create --format "%w%f" tv-shows | while read FILE
do
echo "$FILE" >> list.txt
done
Любая помощь будет отличной, спасибо
РЕДАКТИРОВАТЬ: Просто чтобы быть более конкретным c, скрипт отлично работает для первого файла в list.txt, без проблем кодирует его и удаляет старую версию, но затем не выполняет никаких других в списке