Изменить: вы можете попробовать это:
for file in *.jpg; do
if datetime="$(exif --debug --machine-readable --tag=DateTimeOriginal "$file" 2>&1)"; then
datetime="${datetime##*$'\n'}"
else
datetime="$(stat --format=%y "$file")"
datetime="${datetime%\.*}"
echo "Warning: $file does not contain tag DateTimeOriginal"
echo "Last modified date is $datetime - use it instead?"
select yn in "Yes" "No"; do
case "$yn" in
Yes)
echo "Info: using last modified date for $file"
break
;;
No)
echo "Info: $file skipped - not using last modified date"
break && continue
;;
esac
done
fi
echo "Renaming $file..."
done
Вы хотели
lines+=("$line")
+=WORD
представляет собой конкатенацию строк(или сложение ). Составное присваивание +=(...)
добавляет значения к массиву.
Вы, вероятно, также захотите процитировать все свои расширения переменных здесь -line
это определенно нужно, если строка может содержать пробелы, но у вас могут возникнуть проблемы и в другом месте.