У меня есть файл сценария centercrop50.bat, который в основном выполняет обрезку всех jpg-изображений в папке:
for %%i in (*.jpg) do convert %%i -gravity Center -crop 50%%x+0+0 cc50_%%i
convert - это команда CLI, которую я установил с помощью imagemagick.
На самом деле я выбираю несколько файлов для обработки из большого каталога pic, копирую их в папку рабочей среды с помощью этого сценария, а затем хочу запустить сценарий для этих файлов в каталоге рабочей среды.
Теперь яВо время тестирования использования я узнал, что этот сценарий также запускается, когда я случайно помещаю файлы непосредственно в сценарий, а не в каталог.Разница зависит от зоны сброса файлов и может быть незначительной.
Неожиданно в этом случае все фотографии исходной папки операции перетаскивания будут обрабатываться циклом for.
Это означает, что скрипт будет работать с моей исходной библиотекой изображений [sic !, omg !!]
Это очень большой риск для меня, и я не собираюсь делать этот скрипт.
Таким образом, мне нужно некоторое кодирование конверта, чтобы определить, не склонен ли скрипт работать с файлами за пределами исходного пути сценария, и в этом случае вообще пропустить обрезку.
Я обнаружил, что исходный путь сценарияможно оценить с помощью% ~ dp0, но я немного застрял, так как я не очень опытен в CMD-скриптинге.
Можете ли вы предложить помощь?