如果我使用cmd.exe手动执行mogrify工作的魅力。
但是,当我从.bat文件运行它时,它会失败。我尝试了一些转换,以防万一,但没有快乐。错误代码始终为The command "mogrify" is missing or not found
。
我以为我找到了答案here但是当我的图像被创建并且活动目录就在我想要的地方时,我看不出这是怎么回事。
我打开了一个控制台,cd到上面创建的新目录,复制并粘贴了以下mogrify命令之一,它运行正常。
所以我认为它要么是我不知道的cmd和bat之间的差异,要么是imagemagick中的某些东西。无论哪种方式,我都是新手,所以希望有人可以帮助我。
环境变量也是正确的
代码如下:
set path=icons %date:~0% %time:~0,2%_%time:~3,2%_%time:~6,2%\
md "%path%"
cd %path%
copy %1 "ios_144x144.png"
copy %1 "android_ldpi.png"
copy %1 "android_mdpi.png"
copy %1 "android_hdpi.png"
copy %1 "android_xhdpi.png"
copy %1 "ios_57x57.png"
copy %1 "ios_72x72.png"
copy %1 "ios_114x114.png"
copy %1 "ios_144x144.png"
pause //Check here to see if dir and images created and that command line is now in %path%. In test runs all is okay as far as here
convert -resize 36x36 android_ldpi.png
mogrify -resize 48x48 android_mdpi.png
mogrify -resize 72x72 android_hdpi.png
mogrify -resize 96x96 android_xhdpi.png
mogrify -resize 114x114 ios_114x114.png
mogrify -resize 144x144 ios_144x144.png
mogrify -resize 72x72 ios_72x72.png
mogrify -resize 57x57 ios_57x57.png
echo Verzeichnis %path% fertig.
pause>nul
答案 0 :(得分:4)
如果程序不在当前目录中,则在PATH环境变量指示的目录中搜索它们。
但是在您的代码中,您正在更改此变量,因此,如果它们不在您正在使用的同一目录中,则不会找到可执行文件。
将变量的名称更改为不与任何系统标准环境变量冲突。