这个imagemagick转换命令出了什么问题?

时间:2013-05-08 09:24:34

标签: command-line imagemagick

我正在尝试使用imagemagick在jpg和png之间转换一些文件,但我一直收到错误:No such file or directory显然,我已经检查过以确保文件确实存在。我当时认为这可能是某种路径长度限制,但我在Windows和Linux中遇到了同样的问题。

命令是:

"C:\Program Files\ImageMagick-6.8.3-Q16\convert.exe" "C:\Tomcat 7\inst-jq\temp\WF\483f95bc-dcd7-405c-a04d-dc8fabbe79e2\eb19c8af-a5d8-4fba-a439-bc83351d2577\Export\4211a260-3565-4c82-be72-7a0ad8337956\content\William Shakespeare\William Shakespeare\The Complete Works\Oberon,Titania,Puck,Fairies_William_Blake_c1786.jpg" "C:\Tomcat 7\inst-jq\temp\WF\483f95bc-dcd7-405c-a04d-dc8fabbe79e2\eb19c8af-a5d8-4fba-a439-bc83351d2577\Store\e7256aee-ab8b-42e6-91a6-525c921679cf\content\William Shakespeare\William Shakespeare\The Complete Works\Oberon,Titania,Puck,Fairies_William_Blake_c1786.png"

关于我所缺少的任何建议都会很棒。

2 个答案:

答案 0 :(得分:2)

我认为这是一个内部路径长度限制,至少在ImageMagick中 - 它也运行良好超过Windows限制(128个左右的字符)。

C / C ++程序通常为文件名/路径/输入分配固定缓冲区 - 这不太可能超过256个字符。

您可能希望重新访问文件系统存储的设计。

如果您可以在文件位于短路径上时运行转换,则会确认我的答案是正确的。

答案 1 :(得分:0)

  

关于我所缺少的任何建议都会很棒。

  1. 尽量避免文件名中的空格
  2. 尽量避免使用,:;等其他字符
  3. 我猜ImageMagick可能会将,视为文件分隔符。