Imagemagick ftp 和空间

Posted

技术标签:

【中文标题】Imagemagick ftp 和空间【英文标题】:Imagemagick ftp and spaces 【发布时间】:2019-02-06 07:30:55 【问题描述】:

Imagemagick 提供了identify 工具,它非常适合我的需要。我在 Ubuntu 上使用它,版本:ImageMagick 6.9.7-4 Q16 x86_64 20170114。

这是我的使用方法:

$ identify "ftp://SERVERNAME:PASSWORD@HOST/DIRECTORY/FILE.pdf"

但是当目录或文件的名称中有空格时,我会收到一个错误,就好像它没有找到文件一样。

有什么办法吗?

注意:我尝试在空格前使用\\\%20^,但这并不能解决此问题。

Error : "identify-im6.q16: no decode delegate for this image format `' @ error/constitute.c/ReadImage/504. no data returned"

(与我没有写正确的文件名一样的消息)。

【问题讨论】:

确切的错误信息是什么,您是否尝试使用 %20 url-escape the spaces? %20 有同样的问题。法语:identify-im6.q16: pas de délégué pour décoder ce format d'image `' @ error/constitute.c/ReadImage/504。与我没有正确写入文件名一样的消息 好的。只是一个提示,您可以通过将 LANG=C 放在开头来运行任何英文命令;例如LANG=C date 【参考方案1】:

您的问题可能是因为您使用了双引号。尝试在 FTP 服务器的 URL 周围使用单引号。例如,这里我使用的是另一个 SO Q&A 中提到的免费 FTP 服务,标题为:Is there a Public FTP server to test upload and download?。

$ identify 'ftp://demo:password@test.rebex.net/pub/example/WinFormClient.png'
ftp://demo:password@test.rebex.net/pub/example/WinFormClient.png=>WinFormClient.png PNG 800x700 800x700+0+0 8-bit sRGB 80000B 0.000u 0:00.000

我找到了另一个允许您上传文件的网站https://dlptest.com/ftp-test/。在使用它时,我相信这会复制您的问题:

$ identify 'ftp://dlpuser%40dlptest.com:e73jzTRTNqCN9PYAAjjn@ftp.dlptest.com/download with space.jpeg'
identify: no decode delegate for this image format `' @ error/constitute.c/ReadImage/512.
identify: no data returned `ftp://dlpuser%40dlptest.com:e73jzTRTNqCN9PYAAjjn@ftp.dlptest.com/download with space.jpeg' @ error/url.c/ReadURLImage/246.

这看起来像是 Imagemagick 处理 URL 的错误。这是我正在使用的版本:

$ identify --version
Version: ImageMagick 7.0.8-0 Q16 x86_64 2018-06-13 https://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: https://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules
Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib

无论如何,我看到你已经在 Imagemagick 论坛上询问过这个问题 - Identify ftp and spaces。

【讨论】:

感谢您的反馈。可悲的是,单引号也有同样的问题。

以上是关于Imagemagick ftp 和空间的主要内容,如果未能解决你的问题,请参考以下文章

安装ImageMagick

sh 使用gd,mcrypt,mysql,pdo,apcu,opcache,bz2,zlib,ftp,pecl-geoip,imagemagick在CentOS上将PHP升级到5.6

使用ImageMagick给图片瘦身

ImageMagick - 智能的灰度空间(GRAYColorspace)让人窒息

css Semama imagem sai fora da sua div por ser maior isto adapta a div ao tamanho da imagem

Linux使用imagemagick的convert命令压缩图片节省服务器空间