Я использую Mac's Automator для выполнения сценария bash для файлов, которые выпадают на капельку. Входы собираются из действий Automator и передаются в сценарий bash в качестве аргументов. Скрипт работает с одним входным файлом, но у меня возникают проблемы с обработкой нескольких файлов.Выполнение сценария bash на нескольких входных файлах, игнорирование других входных переменных
Моя конечная цель - принять несколько отброшенных видеофайлов, запросить номер и извлечь это количество кадров из каждого видеофайла (используя FFmpeg).
я могу перебрать входов с помощью специальной переменной [email protected]
, например, так:
for f in "[email protected]"; do
# perform an action
done
Однако мой сценарий также предлагает пользователю для ввода текста, который я не хочу, включенных в эту петлю.
Я могу получить доступ к каждому входному файлу индивидуально, используя $1
, $2
и т. Д. Но я бы хотел использовать цикл вместо ссылки на каждый файл отдельно. Кроме того, количество входных файлов непредсказуемо, и я не уверен, как различать входные файлы и входной текст.
Как я могу прокручивать только входные файлы без ввода текста?
Вот описание моего текущего рабочего процесса:
задавалась Фильмы
one.mov
два.мы
Установить значение переменной (принимает вход)
SOURCE_FILES
Попросить Текст (игнорирует вход)
Введите номер:
Установить значение переменной (принимает вход)
номер
Получить значение переменной (игнорирует входные)
SOURCE_FILES
Получить значение переменной (принимает входной)
номер
Run Shell Script (принимает входной сигнал, проходят "в качестве аргументов")
#/bin/bash
for f in "[email protected]"; do
echo $f
done
ВЫХОД:
/folder/one.mov
/folder/two.mov
Я надеялся иметь один набор переменных для множества входов (таким образом я мог цикл через него) и другая переменная установлена на число, но похоже, что это не так.
Как я могу прокручивать каждый входной файл без ссылки на ввод текста?
Are вы просто пытаетесь выяснить, как проверить, является ли данный аргумент существующим файлом? –
Возможно, это решение. Как вы думаете, это лучший способ? Моя конечная цель - принять несколько видеофайлов, сброшенных на капельку, запросить номер и извлечь это количество кадров из каждого видео.Я надеялся, что одна переменная установлена на несколько входов (так что я мог бы пропустить ее), а другая переменная установлена на число, но похоже, что это не так. – showdev
Сколько у вас переменных ввода текста? Только _number_? –